Created
October 10, 2021 04:50
-
-
Save bliotti/d8028984c6fa81bc30682776e5293352 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.7+commit.e28d00a7.js&optimize=false&runs=200&gist=
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
import "./ConfirmedOwnerWithProposal.sol"; | |
/** | |
* @title The ConfirmedOwner contract | |
* @notice A contract with helpers for basic contract ownership. | |
*/ | |
contract ConfirmedOwner is ConfirmedOwnerWithProposal { | |
constructor( | |
address newOwner | |
) | |
ConfirmedOwnerWithProposal( | |
newOwner, | |
address(0) | |
) | |
{ | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
import "./interfaces/OwnableInterface.sol"; | |
/** | |
* @title The ConfirmedOwner contract | |
* @notice A contract with helpers for basic contract ownership. | |
*/ | |
contract ConfirmedOwnerWithProposal is OwnableInterface { | |
address private s_owner; | |
address private s_pendingOwner; | |
event OwnershipTransferRequested( | |
address indexed from, | |
address indexed to | |
); | |
event OwnershipTransferred( | |
address indexed from, | |
address indexed to | |
); | |
constructor( | |
address newOwner, | |
address pendingOwner | |
) { | |
require(newOwner != address(0), "Cannot set owner to zero"); | |
s_owner = newOwner; | |
if (pendingOwner != address(0)) { | |
_transferOwnership(pendingOwner); | |
} | |
} | |
/** | |
* @notice Allows an owner to begin transferring ownership to a new address, | |
* pending. | |
*/ | |
function transferOwnership( | |
address to | |
) | |
public | |
override | |
onlyOwner() | |
{ | |
_transferOwnership(to); | |
} | |
/** | |
* @notice Allows an ownership transfer to be completed by the recipient. | |
*/ | |
function acceptOwnership() | |
external | |
override | |
{ | |
require(msg.sender == s_pendingOwner, "Must be proposed owner"); | |
address oldOwner = s_owner; | |
s_owner = msg.sender; | |
s_pendingOwner = address(0); | |
emit OwnershipTransferred(oldOwner, msg.sender); | |
} | |
/** | |
* @notice Get the current owner | |
*/ | |
function owner() | |
public | |
view | |
override | |
returns ( | |
address | |
) | |
{ | |
return s_owner; | |
} | |
/** | |
* @notice validate, transfer ownership, and emit relevant events | |
*/ | |
function _transferOwnership( | |
address to | |
) | |
private | |
{ | |
require(to != msg.sender, "Cannot transfer to self"); | |
s_pendingOwner = to; | |
emit OwnershipTransferRequested(s_owner, to); | |
} | |
/** | |
* @notice validate access | |
*/ | |
function _validateOwnership() | |
internal | |
view | |
{ | |
require(msg.sender == s_owner, "Only callable by owner"); | |
} | |
/** | |
* @notice Reverts if called by anyone other than the contract owner. | |
*/ | |
modifier onlyOwner() { | |
_validateOwnership(); | |
_; | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
interface LinkTokenInterface { | |
function allowance( | |
address owner, | |
address spender | |
) | |
external | |
view | |
returns ( | |
uint256 remaining | |
); | |
function approve( | |
address spender, | |
uint256 value | |
) | |
external | |
returns ( | |
bool success | |
); | |
function balanceOf( | |
address owner | |
) | |
external | |
view | |
returns ( | |
uint256 balance | |
); | |
function decimals() | |
external | |
view | |
returns ( | |
uint8 decimalPlaces | |
); | |
function decreaseApproval( | |
address spender, | |
uint256 addedValue | |
) | |
external | |
returns ( | |
bool success | |
); | |
function increaseApproval( | |
address spender, | |
uint256 subtractedValue | |
) external; | |
function name() | |
external | |
view | |
returns ( | |
string memory tokenName | |
); | |
function symbol() | |
external | |
view | |
returns ( | |
string memory tokenSymbol | |
); | |
function totalSupply() | |
external | |
view | |
returns ( | |
uint256 totalTokensIssued | |
); | |
function transfer( | |
address to, | |
uint256 value | |
) | |
external | |
returns ( | |
bool success | |
); | |
function transferAndCall( | |
address to, | |
uint256 value, | |
bytes calldata data | |
) | |
external | |
returns ( | |
bool success | |
); | |
function transferFrom( | |
address from, | |
address to, | |
uint256 value | |
) | |
external | |
returns ( | |
bool success | |
); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
interface OwnableInterface { | |
function owner() | |
external | |
returns ( | |
address | |
); | |
function transferOwnership( | |
address recipient | |
) | |
external; | |
function acceptOwnership() | |
external; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
import "./interfaces/LinkTokenInterface.sol"; | |
import "./VRFRequestIDBase.sol"; | |
/** **************************************************************************** | |
* @notice Interface for contracts using VRF randomness | |
* ***************************************************************************** | |
* @dev PURPOSE | |
* | |
* @dev Reggie the Random Oracle (not his real job) wants to provide randomness | |
* @dev to Vera the verifier in such a way that Vera can be sure he's not | |
* @dev making his output up to suit himself. Reggie provides Vera a public key | |
* @dev to which he knows the secret key. Each time Vera provides a seed to | |
* @dev Reggie, he gives back a value which is computed completely | |
* @dev deterministically from the seed and the secret key. | |
* | |
* @dev Reggie provides a proof by which Vera can verify that the output was | |
* @dev correctly computed once Reggie tells it to her, but without that proof, | |
* @dev the output is indistinguishable to her from a uniform random sample | |
* @dev from the output space. | |
* | |
* @dev The purpose of this contract is to make it easy for unrelated contracts | |
* @dev to talk to Vera the verifier about the work Reggie is doing, to provide | |
* @dev simple access to a verifiable source of randomness. | |
* ***************************************************************************** | |
* @dev USAGE | |
* | |
* @dev Calling contracts must inherit from VRFConsumerBase, and can | |
* @dev initialize VRFConsumerBase's attributes in their constructor as | |
* @dev shown: | |
* | |
* @dev contract VRFConsumer { | |
* @dev constuctor(<other arguments>, address _vrfCoordinator, address _link) | |
* @dev VRFConsumerBase(_vrfCoordinator, _link) public { | |
* @dev <initialization with other arguments goes here> | |
* @dev } | |
* @dev } | |
* | |
* @dev The oracle will have given you an ID for the VRF keypair they have | |
* @dev committed to (let's call it keyHash), and have told you the minimum LINK | |
* @dev price for VRF service. Make sure your contract has sufficient LINK, and | |
* @dev call requestRandomness(keyHash, fee, seed), where seed is the input you | |
* @dev want to generate randomness from. | |
* | |
* @dev Once the VRFCoordinator has received and validated the oracle's response | |
* @dev to your request, it will call your contract's fulfillRandomness method. | |
* | |
* @dev The randomness argument to fulfillRandomness is the actual random value | |
* @dev generated from your seed. | |
* | |
* @dev The requestId argument is generated from the keyHash and the seed by | |
* @dev makeRequestId(keyHash, seed). If your contract could have concurrent | |
* @dev requests open, you can use the requestId to track which seed is | |
* @dev associated with which randomness. See VRFRequestIDBase.sol for more | |
* @dev details. (See "SECURITY CONSIDERATIONS" for principles to keep in mind, | |
* @dev if your contract could have multiple requests in flight simultaneously.) | |
* | |
* @dev Colliding `requestId`s are cryptographically impossible as long as seeds | |
* @dev differ. (Which is critical to making unpredictable randomness! See the | |
* @dev next section.) | |
* | |
* ***************************************************************************** | |
* @dev SECURITY CONSIDERATIONS | |
* | |
* @dev A method with the ability to call your fulfillRandomness method directly | |
* @dev could spoof a VRF response with any random value, so it's critical that | |
* @dev it cannot be directly called by anything other than this base contract | |
* @dev (specifically, by the VRFConsumerBase.rawFulfillRandomness method). | |
* | |
* @dev For your users to trust that your contract's random behavior is free | |
* @dev from malicious interference, it's best if you can write it so that all | |
* @dev behaviors implied by a VRF response are executed *during* your | |
* @dev fulfillRandomness method. If your contract must store the response (or | |
* @dev anything derived from it) and use it later, you must ensure that any | |
* @dev user-significant behavior which depends on that stored value cannot be | |
* @dev manipulated by a subsequent VRF request. | |
* | |
* @dev Similarly, both miners and the VRF oracle itself have some influence | |
* @dev over the order in which VRF responses appear on the blockchain, so if | |
* @dev your contract could have multiple VRF requests in flight simultaneously, | |
* @dev you must ensure that the order in which the VRF responses arrive cannot | |
* @dev be used to manipulate your contract's user-significant behavior. | |
* | |
* @dev Since the ultimate input to the VRF is mixed with the block hash of the | |
* @dev block in which the request is made, user-provided seeds have no impact | |
* @dev on its economic security properties. They are only included for API | |
* @dev compatability with previous versions of this contract. | |
* | |
* @dev Since the block hash of the block which contains the requestRandomness | |
* @dev call is mixed into the input to the VRF *last*, a sufficiently powerful | |
* @dev miner could, in principle, fork the blockchain to evict the block | |
* @dev containing the request, forcing the request to be included in a | |
* @dev different block with a different hash, and therefore a different input | |
* @dev to the VRF. However, such an attack would incur a substantial economic | |
* @dev cost. This cost scales with the number of blocks the VRF oracle waits | |
* @dev until it calls responds to a request. | |
*/ | |
abstract contract VRFConsumerBase is VRFRequestIDBase { | |
/** | |
* @notice fulfillRandomness handles the VRF response. Your contract must | |
* @notice implement it. See "SECURITY CONSIDERATIONS" above for important | |
* @notice principles to keep in mind when implementing your fulfillRandomness | |
* @notice method. | |
* | |
* @dev VRFConsumerBase expects its subcontracts to have a method with this | |
* @dev signature, and will call it once it has verified the proof | |
* @dev associated with the randomness. (It is triggered via a call to | |
* @dev rawFulfillRandomness, below.) | |
* | |
* @param requestId The Id initially returned by requestRandomness | |
* @param randomness the VRF output | |
*/ | |
function fulfillRandomness( | |
bytes32 requestId, | |
uint256 randomness | |
) | |
internal | |
virtual; | |
/** | |
* @dev In order to keep backwards compatibility we have kept the user | |
* seed field around. We remove the use of it because given that the blockhash | |
* enters later, it overrides whatever randomness the used seed provides. | |
* Given that it adds no security, and can easily lead to misunderstandings, | |
* we have removed it from usage and can now provide a simpler API. | |
*/ | |
uint256 constant private USER_SEED_PLACEHOLDER = 0; | |
/** | |
* @notice requestRandomness initiates a request for VRF output given _seed | |
* | |
* @dev The fulfillRandomness method receives the output, once it's provided | |
* @dev by the Oracle, and verified by the vrfCoordinator. | |
* | |
* @dev The _keyHash must already be registered with the VRFCoordinator, and | |
* @dev the _fee must exceed the fee specified during registration of the | |
* @dev _keyHash. | |
* | |
* @dev The _seed parameter is vestigial, and is kept only for API | |
* @dev compatibility with older versions. It can't *hurt* to mix in some of | |
* @dev your own randomness, here, but it's not necessary because the VRF | |
* @dev oracle will mix the hash of the block containing your request into the | |
* @dev VRF seed it ultimately uses. | |
* | |
* @param _keyHash ID of public key against which randomness is generated | |
* @param _fee The amount of LINK to send with the request | |
* | |
* @return requestId unique ID for this request | |
* | |
* @dev The returned requestId can be used to distinguish responses to | |
* @dev concurrent requests. It is passed as the first argument to | |
* @dev fulfillRandomness. | |
*/ | |
function requestRandomness( | |
bytes32 _keyHash, | |
uint256 _fee | |
) | |
internal | |
returns ( | |
bytes32 requestId | |
) | |
{ | |
LINK.transferAndCall(vrfCoordinator, _fee, abi.encode(_keyHash, USER_SEED_PLACEHOLDER)); | |
// This is the seed passed to VRFCoordinator. The oracle will mix this with | |
// the hash of the block containing this request to obtain the seed/input | |
// which is finally passed to the VRF cryptographic machinery. | |
uint256 vRFSeed = makeVRFInputSeed(_keyHash, USER_SEED_PLACEHOLDER, address(this), nonces[_keyHash]); | |
// nonces[_keyHash] must stay in sync with | |
// VRFCoordinator.nonces[_keyHash][this], which was incremented by the above | |
// successful LINK.transferAndCall (in VRFCoordinator.randomnessRequest). | |
// This provides protection against the user repeating their input seed, | |
// which would result in a predictable/duplicate output, if multiple such | |
// requests appeared in the same block. | |
nonces[_keyHash] = nonces[_keyHash] + 1; | |
return makeRequestId(_keyHash, vRFSeed); | |
} | |
LinkTokenInterface immutable internal LINK; | |
address immutable private vrfCoordinator; | |
// Nonces for each VRF key from which randomness has been requested. | |
// | |
// Must stay in sync with VRFCoordinator[_keyHash][this] | |
mapping(bytes32 /* keyHash */ => uint256 /* nonce */) private nonces; | |
/** | |
* @param _vrfCoordinator address of VRFCoordinator contract | |
* @param _link address of LINK token contract | |
* | |
* @dev https://docs.chain.link/docs/link-token-contracts | |
*/ | |
constructor( | |
address _vrfCoordinator, | |
address _link | |
) { | |
vrfCoordinator = _vrfCoordinator; | |
LINK = LinkTokenInterface(_link); | |
} | |
// rawFulfillRandomness is called by VRFCoordinator when it receives a valid VRF | |
// proof. rawFulfillRandomness then calls fulfillRandomness, after validating | |
// the origin of the call | |
function rawFulfillRandomness( | |
bytes32 requestId, | |
uint256 randomness | |
) | |
external | |
{ | |
require(msg.sender == vrfCoordinator, "Only VRFCoordinator can fulfill"); | |
fulfillRandomness(requestId, randomness); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.0; | |
contract VRFRequestIDBase { | |
/** | |
* @notice returns the seed which is actually input to the VRF coordinator | |
* | |
* @dev To prevent repetition of VRF output due to repetition of the | |
* @dev user-supplied seed, that seed is combined in a hash with the | |
* @dev user-specific nonce, and the address of the consuming contract. The | |
* @dev risk of repetition is mostly mitigated by inclusion of a blockhash in | |
* @dev the final seed, but the nonce does protect against repetition in | |
* @dev requests which are included in a single block. | |
* | |
* @param _userSeed VRF seed input provided by user | |
* @param _requester Address of the requesting contract | |
* @param _nonce User-specific nonce at the time of the request | |
*/ | |
function makeVRFInputSeed( | |
bytes32 _keyHash, | |
uint256 _userSeed, | |
address _requester, | |
uint256 _nonce | |
) | |
internal | |
pure | |
returns ( | |
uint256 | |
) | |
{ | |
return uint256(keccak256(abi.encode(_keyHash, _userSeed, _requester, _nonce))); | |
} | |
/** | |
* @notice Returns the id for this request | |
* @param _keyHash The serviceAgreement ID to be used for this request | |
* @param _vRFInputSeed The seed to be passed directly to the VRF | |
* @return The id for this request | |
* | |
* @dev Note that _vRFInputSeed is not the seed passed by the consuming | |
* @dev contract, but the one generated by makeVRFInputSeed | |
*/ | |
function makeRequestId( | |
bytes32 _keyHash, | |
uint256 _vRFInputSeed | |
) | |
internal | |
pure | |
returns ( | |
bytes32 | |
) | |
{ | |
return keccak256(abi.encodePacked(_keyHash, _vRFInputSeed)); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"deploy": { | |
"VM:-": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"main:1": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"ropsten:3": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"rinkeby:4": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"kovan:42": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"görli:5": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"Custom": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
} | |
}, | |
"data": { | |
"bytecode": { | |
"functionDebugData": { | |
"@_298": { | |
"entryPoint": null, | |
"id": 298, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@_98": { | |
"entryPoint": null, | |
"id": 98, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [], | |
"linkReferences": {}, | |
"object": "60c060405234801561001057600080fd5b5073dd3782915140c8f3b190b5d67eac6dc5760c46e973a36085f69e2889c224210f603d836748e7dc00888173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505050507f6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f460001b60018190555067016345785d8a000060028190555060805160601c60a05160601c610c8861011d6000396000818161019e015261038501526000818161023f01526103490152610c886000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806342619f6614610051578063874b3afc1461006f57806394985ddd1461009f578063dbdff2c1146100bb575b600080fd5b6100596100d9565b6040516100669190610910565b60405180910390f35b61008960048036038101906100849190610601565b6100df565b6040516100969190610825565b60405180910390f35b6100b960048036038101906100b49190610594565b61019c565b005b6100c3610238565b6040516100d09190610847565b60405180910390f35b60035481565b60608167ffffffffffffffff8111156100fb576100fa610b50565b5b6040519080825280602002602001820160405280156101295781602001602082028036833780820191505090505b50905060005b8281101561019557838160405160200161014a92919061092b565b6040516020818303038152906040528051906020012060001c82828151811061017657610175610b21565b5b602002602001018181525050808061018d90610a95565b91505061012f565b5092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461022a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610221906108f0565b60405180910390fd5b610234828261033a565b5050565b60006002547f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161029691906107cc565b60206040518083038186803b1580156102ae57600080fd5b505afa1580156102c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e691906105d4565b1015610327576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031e906108d0565b60405180910390fd5b610335600154600254610345565b905090565b806003819055505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634000aea07f0000000000000000000000000000000000000000000000000000000000000000848660006040516020016103b9929190610862565b6040516020818303038152906040526040518463ffffffff1660e01b81526004016103e6939291906107e7565b602060405180830381600087803b15801561040057600080fd5b505af1158015610414573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104389190610567565b50600061045a84600030600080898152602001908152602001600020546104a4565b905060016000808681526020019081526020016000205461047b91906109ba565b6000808681526020019081526020016000208190555061049b84826104e0565b91505092915050565b6000848484846040516020016104bd949392919061088b565b6040516020818303038152906040528051906020012060001c9050949350505050565b600082826040516020016104f59291906107a0565b60405160208183030381529060405280519060200120905092915050565b60008151905061052281610c0d565b92915050565b60008135905061053781610c24565b92915050565b60008135905061054c81610c3b565b92915050565b60008151905061056181610c3b565b92915050565b60006020828403121561057d5761057c610b7f565b5b600061058b84828501610513565b91505092915050565b600080604083850312156105ab576105aa610b7f565b5b60006105b985828601610528565b92505060206105ca8582860161053d565b9150509250929050565b6000602082840312156105ea576105e9610b7f565b5b60006105f884828501610552565b91505092915050565b6000806040838503121561061857610617610b7f565b5b60006106268582860161053d565b92505060206106378582860161053d565b9150509250929050565b600061064d838361076b565b60208301905092915050565b61066281610a10565b82525050565b600061067382610964565b61067d8185610987565b935061068883610954565b8060005b838110156106b95781516106a08882610641565b97506106ab8361097a565b92505060018101905061068c565b5085935050505092915050565b6106cf81610a2e565b82525050565b6106e66106e182610a2e565b610ade565b82525050565b60006106f78261096f565b6107018185610998565b9350610711818560208601610a62565b61071a81610b84565b840191505092915050565b6000610732602b836109a9565b915061073d82610b95565b604082019050919050565b6000610755601f836109a9565b915061076082610be4565b602082019050919050565b61077481610a58565b82525050565b61078381610a58565b82525050565b61079a61079582610a58565b610ae8565b82525050565b60006107ac82856106d5565b6020820191506107bc8284610789565b6020820191508190509392505050565b60006020820190506107e16000830184610659565b92915050565b60006060820190506107fc6000830186610659565b610809602083018561077a565b818103604083015261081b81846106ec565b9050949350505050565b6000602082019050818103600083015261083f8184610668565b905092915050565b600060208201905061085c60008301846106c6565b92915050565b600060408201905061087760008301856106c6565b610884602083018461077a565b9392505050565b60006080820190506108a060008301876106c6565b6108ad602083018661077a565b6108ba6040830185610659565b6108c7606083018461077a565b95945050505050565b600060208201905081810360008301526108e981610725565b9050919050565b6000602082019050818103600083015261090981610748565b9050919050565b6000602082019050610925600083018461077a565b92915050565b6000604082019050610940600083018561077a565b61094d602083018461077a565b9392505050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b60006109c582610a58565b91506109d083610a58565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610a0557610a04610af2565b5b828201905092915050565b6000610a1b82610a38565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015610a80578082015181840152602081019050610a65565b83811115610a8f576000848401525b50505050565b6000610aa082610a58565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610ad357610ad2610af2565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f4e6f7420656e6f756768204c494e4b202d2066696c6c20636f6e74726163742060008201527f7769746820666175636574000000000000000000000000000000000000000000602082015250565b7f4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c00600082015250565b610c1681610a22565b8114610c2157600080fd5b50565b610c2d81610a2e565b8114610c3857600080fd5b50565b610c4481610a58565b8114610c4f57600080fd5b5056fea2646970667358221220b398c22e73c96e914b80862527e9a63253e7e07b77f3f77462b8fac18196b72a64736f6c63430008070033", | |
"opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0xDD3782915140C8F3B190B5D67EAC6DC5760C46E9 PUSH20 0xA36085F69E2889C224210F603D836748E7DC0088 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP POP PUSH32 0x6C3699283BDA56AD74F6B855546325B68D482E983852A7A82979CC4807B641F4 PUSH1 0x0 SHL PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH8 0x16345785D8A0000 PUSH1 0x2 DUP2 SWAP1 SSTORE POP PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH2 0xC88 PUSH2 0x11D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x19E ADD MSTORE PUSH2 0x385 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x23F ADD MSTORE PUSH2 0x349 ADD MSTORE PUSH2 0xC88 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 0x42619F66 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x874B3AFC EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x94985DDD EQ PUSH2 0x9F JUMPI DUP1 PUSH4 0xDBDFF2C1 EQ PUSH2 0xBB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xD9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x910 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 0x601 JUMP JUMPDEST PUSH2 0xDF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x96 SWAP2 SWAP1 PUSH2 0x825 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB4 SWAP2 SWAP1 PUSH2 0x594 JUMP JUMPDEST PUSH2 0x19C JUMP JUMPDEST STOP JUMPDEST PUSH2 0xC3 PUSH2 0x238 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP2 SWAP1 PUSH2 0x847 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x3 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xFB JUMPI PUSH2 0xFA PUSH2 0xB50 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 0x129 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 DUP2 LT ISZERO PUSH2 0x195 JUMPI DUP4 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x14A SWAP3 SWAP2 SWAP1 PUSH2 0x92B 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 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x176 JUMPI PUSH2 0x175 PUSH2 0xB21 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 DUP1 PUSH2 0x18D SWAP1 PUSH2 0xA95 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x12F JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x22A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x221 SWAP1 PUSH2 0x8F0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x234 DUP3 DUP3 PUSH2 0x33A JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x296 SWAP2 SWAP1 PUSH2 0x7CC JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2C2 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 0x2E6 SWAP2 SWAP1 PUSH2 0x5D4 JUMP JUMPDEST LT ISZERO PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31E SWAP1 PUSH2 0x8D0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x335 PUSH1 0x1 SLOAD PUSH1 0x2 SLOAD PUSH2 0x345 JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST DUP1 PUSH1 0x3 DUP2 SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP5 DUP7 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x3B9 SWAP3 SWAP2 SWAP1 PUSH2 0x862 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E6 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7E7 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x400 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x414 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 0x438 SWAP2 SWAP1 PUSH2 0x567 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x45A DUP5 PUSH1 0x0 ADDRESS PUSH1 0x0 DUP1 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x4A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x47B SWAP2 SWAP1 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x49B DUP5 DUP3 PUSH2 0x4E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4BD SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x88B 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 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4F5 SWAP3 SWAP2 SWAP1 PUSH2 0x7A0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x522 DUP2 PUSH2 0xC0D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x537 DUP2 PUSH2 0xC24 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x54C DUP2 PUSH2 0xC3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x561 DUP2 PUSH2 0xC3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x57D JUMPI PUSH2 0x57C PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x58B DUP5 DUP3 DUP6 ADD PUSH2 0x513 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x5AB JUMPI PUSH2 0x5AA PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5B9 DUP6 DUP3 DUP7 ADD PUSH2 0x528 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x5CA DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5EA JUMPI PUSH2 0x5E9 PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5F8 DUP5 DUP3 DUP6 ADD PUSH2 0x552 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x618 JUMPI PUSH2 0x617 PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x626 DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x637 DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x64D DUP4 DUP4 PUSH2 0x76B JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x662 DUP2 PUSH2 0xA10 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x673 DUP3 PUSH2 0x964 JUMP JUMPDEST PUSH2 0x67D DUP2 DUP6 PUSH2 0x987 JUMP JUMPDEST SWAP4 POP PUSH2 0x688 DUP4 PUSH2 0x954 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6B9 JUMPI DUP2 MLOAD PUSH2 0x6A0 DUP9 DUP3 PUSH2 0x641 JUMP JUMPDEST SWAP8 POP PUSH2 0x6AB DUP4 PUSH2 0x97A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x68C JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6CF DUP2 PUSH2 0xA2E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x6E6 PUSH2 0x6E1 DUP3 PUSH2 0xA2E JUMP JUMPDEST PUSH2 0xADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F7 DUP3 PUSH2 0x96F JUMP JUMPDEST PUSH2 0x701 DUP2 DUP6 PUSH2 0x998 JUMP JUMPDEST SWAP4 POP PUSH2 0x711 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xA62 JUMP JUMPDEST PUSH2 0x71A DUP2 PUSH2 0xB84 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x732 PUSH1 0x2B DUP4 PUSH2 0x9A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x73D DUP3 PUSH2 0xB95 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x755 PUSH1 0x1F DUP4 PUSH2 0x9A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x760 DUP3 PUSH2 0xBE4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x774 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x783 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x79A PUSH2 0x795 DUP3 PUSH2 0xA58 JUMP JUMPDEST PUSH2 0xAE8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AC DUP3 DUP6 PUSH2 0x6D5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x7BC DUP3 DUP5 PUSH2 0x789 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x7E1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x659 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x7FC PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x659 JUMP JUMPDEST PUSH2 0x809 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x77A JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x81B DUP2 DUP5 PUSH2 0x6EC JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x83F DUP2 DUP5 PUSH2 0x668 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x85C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6C6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x877 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6C6 JUMP JUMPDEST PUSH2 0x884 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x8A0 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x6C6 JUMP JUMPDEST PUSH2 0x8AD PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x77A JUMP JUMPDEST PUSH2 0x8BA PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x659 JUMP JUMPDEST PUSH2 0x8C7 PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8E9 DUP2 PUSH2 0x725 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 0x909 DUP2 PUSH2 0x748 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x925 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x940 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x77A JUMP JUMPDEST PUSH2 0x94D PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP4 SWAP3 POP POP 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9C5 DUP3 PUSH2 0xA58 JUMP JUMPDEST SWAP2 POP PUSH2 0x9D0 DUP4 PUSH2 0xA58 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0xA05 JUMPI PUSH2 0xA04 PUSH2 0xAF2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA1B DUP3 PUSH2 0xA38 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xA80 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xA65 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0xA8F JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAA0 DUP3 PUSH2 0xA58 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0xAD3 JUMPI PUSH2 0xAD2 PUSH2 0xAF2 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 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 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B202D2066696C6C20636F6E747261637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7769746820666175636574000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0xC16 DUP2 PUSH2 0xA22 JUMP JUMPDEST DUP2 EQ PUSH2 0xC21 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xC2D DUP2 PUSH2 0xA2E JUMP JUMPDEST DUP2 EQ PUSH2 0xC38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xC44 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP2 EQ PUSH2 0xC4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB3 SWAP9 0xC2 0x2E PUSH20 0xC96E914B80862527E9A63253E7E07B77F3F77462 0xB8 STATICCALL 0xC1 DUP2 SWAP7 0xB7 0x2A PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "244:1781:3:-:0;;;747:354;;;;;;;;;;799:42;874;9386:15:0;9369:32;;;;;;;;;;;;9433:5;9407:32;;;;;;;;;;;;9299:145;;966:66:3::1;956:76;;:7;:76;;;;1048:14;1042:3;:20;;;;244:1781:::0;;;;;;;;;;;;;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@expand_385": { | |
"entryPoint": 223, | |
"id": 385, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"@fulfillRandomness_337": { | |
"entryPoint": 826, | |
"id": 337, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@getRandomNumber_323": { | |
"entryPoint": 568, | |
"id": 323, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@makeRequestId_169": { | |
"entryPoint": 1248, | |
"id": 169, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"@makeVRFInputSeed_150": { | |
"entryPoint": 1188, | |
"id": 150, | |
"parameterSlots": 4, | |
"returnSlots": 1 | |
}, | |
"@randomResult_277": { | |
"entryPoint": 217, | |
"id": 277, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@rawFulfillRandomness_119": { | |
"entryPoint": 412, | |
"id": 119, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@requestRandomness_70": { | |
"entryPoint": 837, | |
"id": 70, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_bool_fromMemory": { | |
"entryPoint": 1299, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_bytes32": { | |
"entryPoint": 1320, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256": { | |
"entryPoint": 1341, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256_fromMemory": { | |
"entryPoint": 1362, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_bool_fromMemory": { | |
"entryPoint": 1383, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_bytes32t_uint256": { | |
"entryPoint": 1428, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_decode_tuple_t_uint256_fromMemory": { | |
"entryPoint": 1492, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_uint256t_uint256": { | |
"entryPoint": 1537, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_encodeUpdatedPos_t_uint256_to_t_uint256": { | |
"entryPoint": 1601, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_address_to_t_address_fromStack": { | |
"entryPoint": 1625, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { | |
"entryPoint": 1640, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_bytes32_to_t_bytes32_fromStack": { | |
"entryPoint": 1734, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { | |
"entryPoint": 1749, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { | |
"entryPoint": 1772, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1829, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1864, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_uint256_to_t_uint256": { | |
"entryPoint": 1899, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_uint256_to_t_uint256_fromStack": { | |
"entryPoint": 1914, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack": { | |
"entryPoint": 1929, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed": { | |
"entryPoint": 1952, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { | |
"entryPoint": 1996, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { | |
"entryPoint": 2023, | |
"id": null, | |
"parameterSlots": 4, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed": { | |
"entryPoint": 2085, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { | |
"entryPoint": 2119, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed": { | |
"entryPoint": 2146, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed": { | |
"entryPoint": 2187, | |
"id": null, | |
"parameterSlots": 5, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 2256, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 2288, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { | |
"entryPoint": 2320, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed": { | |
"entryPoint": 2347, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"array_dataslot_t_array$_t_uint256_$dyn_memory_ptr": { | |
"entryPoint": 2388, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_array$_t_uint256_$dyn_memory_ptr": { | |
"entryPoint": 2404, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_bytes_memory_ptr": { | |
"entryPoint": 2415, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_nextElement_t_array$_t_uint256_$dyn_memory_ptr": { | |
"entryPoint": 2426, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { | |
"entryPoint": 2439, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { | |
"entryPoint": 2456, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { | |
"entryPoint": 2473, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"checked_add_t_uint256": { | |
"entryPoint": 2490, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_address": { | |
"entryPoint": 2576, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_bool": { | |
"entryPoint": 2594, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_bytes32": { | |
"entryPoint": 2606, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint160": { | |
"entryPoint": 2616, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 2648, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_memory_to_memory": { | |
"entryPoint": 2658, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"increment_t_uint256": { | |
"entryPoint": 2709, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"leftAlign_t_bytes32": { | |
"entryPoint": 2782, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"leftAlign_t_uint256": { | |
"entryPoint": 2792, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x11": { | |
"entryPoint": 2802, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x32": { | |
"entryPoint": 2849, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x41": { | |
"entryPoint": 2896, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 2943, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"round_up_to_mul_of_32": { | |
"entryPoint": 2948, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"store_literal_in_memory_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74": { | |
"entryPoint": 2965, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445": { | |
"entryPoint": 3044, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_bool": { | |
"entryPoint": 3085, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_bytes32": { | |
"entryPoint": 3108, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint256": { | |
"entryPoint": 3131, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:13558:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "67:77:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "77:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "92:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "86:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "86:13:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "77:5:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "132:5:4" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_bool", | |
"nodeType": "YulIdentifier", | |
"src": "108:23:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "108:30:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "108:30:4" | |
} | |
] | |
}, | |
"name": "abi_decode_t_bool_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "45:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "53:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "61:5:4", | |
"type": "" | |
} | |
], | |
"src": "7:137:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "202:87:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "212:29:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "234:6:4" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "221:12:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "221:20:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "212:5:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "277:5:4" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "250:26:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "250:33:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "250:33:4" | |
} | |
] | |
}, | |
"name": "abi_decode_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "180:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "188:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "196:5:4", | |
"type": "" | |
} | |
], | |
"src": "150:139:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "347:87:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "357:29:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "379:6:4" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "366:12:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "366:20:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "357:5:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "422:5:4" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "395:26:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "395:33:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "395:33:4" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "325:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "333:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "341:5:4", | |
"type": "" | |
} | |
], | |
"src": "295:139:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "503:80:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "513:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "528:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "522:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "522:13:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "513:5:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "571:5:4" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "544:26:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "544:33:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "544:33:4" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "481:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "489:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "497:5:4", | |
"type": "" | |
} | |
], | |
"src": "440:143:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "663:271:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "709:83:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "711:77:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "711:79:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "711:79:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "684:7:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "693:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "680:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "680:23:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "705:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "676:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "676:32:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "673:119:4" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "802:125:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "817:15:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "831:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "821:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "846:71:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "889:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "900:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "885:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "885:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "909:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bool_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "856:28:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "856:61:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "846:6:4" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_bool_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "633:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "644:7:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "656:6:4", | |
"type": "" | |
} | |
], | |
"src": "589:345:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1023:391:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1069:83:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1071:77:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1071:79:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1071:79:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1044:7:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1053:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1040:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1040:23:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1065:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1036:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1036:32:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "1033:119:4" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1162:117:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1177:15:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1191:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1181:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1206:63:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1241:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1252:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1237:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1237:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1261:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "1216:20:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1216:53:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1206:6:4" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1289:118:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1304:16:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1318:2:4", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1308:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1334:63:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1369:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1380:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1365:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1365:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1389:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1344:20:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1344:53:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "1334:6:4" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_bytes32t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "985:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "996:7:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1008:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "1016:6:4", | |
"type": "" | |
} | |
], | |
"src": "940:474:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1497:274:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1543:83:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1545:77:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1545:79:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1545:79:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1518:7:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1527:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1514:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1514:23:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1539:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1510:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1510:32:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "1507:119:4" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1636:128:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1651:15:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1665:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1655:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1680:74:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1726:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1737:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1722:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1722:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1746:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1690:31:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1690:64:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1680:6:4" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1467:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1478:7:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1490:6:4", | |
"type": "" | |
} | |
], | |
"src": "1420:351:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1860:391:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1906:83:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1908:77:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1908:79:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1908:79:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1881:7:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1890:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1877:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1877:23:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1902:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1873:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1873:32:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "1870:119:4" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1999:117:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2014:15:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2028:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2018:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2043:63:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2078:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2089:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2074:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2074:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2098:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2053:20:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2053:53:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2043:6:4" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "2126:118:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2141:16:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2155:2:4", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2145:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2171:63:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2206:9:4" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2217:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2202:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2202:22:4" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2226:7:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2181:20:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2181:53:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "2171:6:4" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint256t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1822:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1833:7:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1845:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "1853:6:4", | |
"type": "" | |
} | |
], | |
"src": "1777:474:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2337:99:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2381:6:4" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2389:3:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2347:33:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2347:46:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2347:46:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2402:28:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2420:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2425:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2416:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2416:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updatedPos", | |
"nodeType": "YulIdentifier", | |
"src": "2402:10:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "2310:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2318:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updatedPos", | |
"nodeType": "YulTypedName", | |
"src": "2326:10:4", | |
"type": "" | |
} | |
], | |
"src": "2257:179:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2507:53:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2524:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2547:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "2529:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2529:24:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2517:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2517:37:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2517:37:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2495:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2502:3:4", | |
"type": "" | |
} | |
], | |
"src": "2442:118:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2720:608:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2730:68:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2792:5:4" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "2744:47:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2744:54:4" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "2734:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2807:93:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2888:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "2893:6:4" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "2814:73:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2814:86:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2807:3:4" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2909:71:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "2974:5:4" | |
} | |
], | |
"functionName": { | |
"name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "2924:49:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2924:56:4" | |
}, | |
"variables": [ | |
{ | |
"name": "baseRef", | |
"nodeType": "YulTypedName", | |
"src": "2913:7:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2989:21:4", | |
"value": { | |
"name": "baseRef", | |
"nodeType": "YulIdentifier", | |
"src": "3003:7:4" | |
}, | |
"variables": [ | |
{ | |
"name": "srcPtr", | |
"nodeType": "YulTypedName", | |
"src": "2993:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3079:224:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3093:34:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcPtr", | |
"nodeType": "YulIdentifier", | |
"src": "3120:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "3114:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3114:13:4" | |
}, | |
"variables": [ | |
{ | |
"name": "elementValue0", | |
"nodeType": "YulTypedName", | |
"src": "3097:13:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3140:70:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "elementValue0", | |
"nodeType": "YulIdentifier", | |
"src": "3191:13:4" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3206:3:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "3147:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3147:63:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3140:3:4" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3223:70:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "srcPtr", | |
"nodeType": "YulIdentifier", | |
"src": "3286:6:4" | |
} | |
], | |
"functionName": { | |
"name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3233:52:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3233:60:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "srcPtr", | |
"nodeType": "YulIdentifier", | |
"src": "3223:6:4" | |
} | |
] | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "3041:1:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3044:6:4" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "3038:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3038:13:4" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "3052:18:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3054:14:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "3063:1:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3066:1:4", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3059:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3059:9:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "3054:1:4" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "3023:14:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3025:10:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3034:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "3029:1:4", | |
"type": "" | |
} | |
] | |
} | |
] | |
}, | |
"src": "3019:284:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3312:10:4", | |
"value": { | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3319:3:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "3312:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "2699:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "2706:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "2715:3:4", | |
"type": "" | |
} | |
], | |
"src": "2596:732:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3399:53:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3416:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3439:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3421:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3421:24:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3409:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3409:37:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3409:37:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3387:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3394:3:4", | |
"type": "" | |
} | |
], | |
"src": "3334:118:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3541:74:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3558:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3601:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3583:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3583:24:4" | |
} | |
], | |
"functionName": { | |
"name": "leftAlign_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3563:19:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3563:45:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3551:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3551:58:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3551:58:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3529:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3536:3:4", | |
"type": "" | |
} | |
], | |
"src": "3458:157:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3711:270:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3721:52:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3767:5:4" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_bytes_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3735:31:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3735:38:4" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "3725:6:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3782:77:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3847:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3852:6:4" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3789:57:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3789:70:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3782:3:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3894:5:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3901:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3890:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3890:16:4" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3908:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3913:6:4" | |
} | |
], | |
"functionName": { | |
"name": "copy_memory_to_memory", | |
"nodeType": "YulIdentifier", | |
"src": "3868:21:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3868:52:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3868:52:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3929:46:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3940:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3967:6:4" | |
} | |
], | |
"functionName": { | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulIdentifier", | |
"src": "3945:21:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3945:29:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3936:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3936:39:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "3929:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3692:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3699:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3707:3:4", | |
"type": "" | |
} | |
], | |
"src": "3621:360:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4133:220:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4143:74:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4209:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4214:2:4", | |
"type": "", | |
"value": "43" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4150:58:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4150:67:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4143:3:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4315:3:4" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74", | |
"nodeType": "YulIdentifier", | |
"src": "4226:88:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4226:93:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4226:93:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4328:19:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4339:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4344:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4335:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4335:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4328:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4121:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4129:3:4", | |
"type": "" | |
} | |
], | |
"src": "3987:366:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4505:220:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4515:74:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4581:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4586:2:4", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4522:58:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4522:67:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4515:3:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4687:3:4" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445", | |
"nodeType": "YulIdentifier", | |
"src": "4598:88:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4598:93:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4598:93:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4700:19:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4711:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4716:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4707:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4707:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4700:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4493:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4501:3:4", | |
"type": "" | |
} | |
], | |
"src": "4359:366:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4786:53:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4803:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4826:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "4808:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4808:24:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "4796:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4796:37:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4796:37:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_uint256_to_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4774:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4781:3:4", | |
"type": "" | |
} | |
], | |
"src": "4731:108:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4910:53:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4927:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4950:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "4932:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4932:24:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "4920:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4920:37:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4920:37:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4898:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4905:3:4", | |
"type": "" | |
} | |
], | |
"src": "4845:118:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5052:74:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5069:3:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "5112:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "5094:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5094:24:4" | |
} | |
], | |
"functionName": { | |
"name": "leftAlign_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "5074:19:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5074:45:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "5062:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5062:58:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5062:58:4" | |
} | |
] | |
}, | |
"name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "5040:5:4", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "5047:3:4", | |
"type": "" | |
} | |
], | |
"src": "4969:157:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5276:253:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "5349:6:4" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5358:3:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5287:61:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5287:75:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5287:75:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5371:19:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5382:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5387:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5378:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5378:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5371:3:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "5462:6:4" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5471:3:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5400:61:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5400:75:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5400:75:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5484:19:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5495:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5500:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5491:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5491:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5484:3:4" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5513:10:4", | |
"value": { | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5520:3:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "5513:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "5247:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "5253:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "5261:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "5272:3:4", | |
"type": "" | |
} | |
], | |
"src": "5132:397:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5633:124:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5643:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5655:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5666:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5651:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5651:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5643:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "5723:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5736:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5747:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5732:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5732:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5679:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5679:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5679:71:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "5605:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "5617:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "5628:4:4", | |
"type": "" | |
} | |
], | |
"src": "5535:222:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5935:357:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5945:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "5957:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5968:2:4", | |
"type": "", | |
"value": "96" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5953:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5953:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "5945:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "6025:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6038:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6049:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6034:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6034:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5981:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5981:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5981:71:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "6106:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6119:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6130:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6115:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6115:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6062:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6062:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6062:72:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6155:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6166:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6151:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6151:18:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6175:4:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6181:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "6171:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6171:20:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "6144:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6144:48:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6144:48:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6201:84:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "6271:6:4" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6280:4:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6209:61:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6209:76:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6201:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "5891:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "5903:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "5911:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "5919:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "5930:4:4", | |
"type": "" | |
} | |
], | |
"src": "5763:529:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6446:225:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6456:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6468:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6479:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6464:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6464:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6456:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6503:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6514:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6499:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6499:17:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6522:4:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6528:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "6518:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6518:20:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "6492:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6492:47:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6492:47:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6548:116:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "6650:6:4" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6659:4:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6556:93:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6556:108:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6548:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "6418:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "6430:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "6441:4:4", | |
"type": "" | |
} | |
], | |
"src": "6298:373:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6775:124:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6785:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6797:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6808:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6793:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6793:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "6785:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "6865:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "6878:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6889:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6874:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6874:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6821:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6821:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6821:71:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "6747:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "6759:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "6770:4:4", | |
"type": "" | |
} | |
], | |
"src": "6677:222:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7031:206:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7041:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7053:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7064:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7049:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7049:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "7041:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "7121:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7134:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7145:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7130:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7130:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7077:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7077:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7077:71:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "7202:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7215:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7226:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7211:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7211:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7158:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7158:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7158:72:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "6995:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "7007:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "7015:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "7026:4:4", | |
"type": "" | |
} | |
], | |
"src": "6905:332:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7425:371:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7435:27:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7447:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7458:3:4", | |
"type": "", | |
"value": "128" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7443:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7443:19:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "7435:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "7516:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7529:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7540:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7525:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7525:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7472:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7472:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7472:71:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "7597:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7610:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7621:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7606:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7606:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7553:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7553:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7553:72:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "7679:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7692:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7703:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7688:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7688:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7635:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7635:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7635:72:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value3", | |
"nodeType": "YulIdentifier", | |
"src": "7761:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7774:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7785:2:4", | |
"type": "", | |
"value": "96" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7770:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7770:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7717:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7717:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7717:72:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "7373:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value3", | |
"nodeType": "YulTypedName", | |
"src": "7385:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "7393:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "7401:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "7409:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "7420:4:4", | |
"type": "" | |
} | |
], | |
"src": "7243:553:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7973:248:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7983:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "7995:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8006:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7991:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7991:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "7983:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8030:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8041:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8026:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8026:17:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8049:4:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8055:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "8045:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8045:20:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "8019:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8019:47:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8019:47:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8075:139:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8209:4:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8083:124:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8083:131:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8075:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "7953:9:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "7968:4:4", | |
"type": "" | |
} | |
], | |
"src": "7802:419:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8398:248:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8408:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8420:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8431:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8416:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8416:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8408:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8455:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8466:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8451:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8451:17:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8474:4:4" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8480:9:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "8470:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8470:20:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "8444:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8444:47:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8444:47:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8500:139:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8634:4:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8508:124:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8508:131:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8500:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "8378:9:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "8393:4:4", | |
"type": "" | |
} | |
], | |
"src": "8227:419:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8750:124:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8760:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8772:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8783:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8768:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8768:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8760:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "8840:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8853:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8864:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8849:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8849:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8796:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8796:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8796:71:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "8722:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "8734:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "8745:4:4", | |
"type": "" | |
} | |
], | |
"src": "8652:222:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9006:206:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9016:26:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9028:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9039:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9024:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9024:18:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9016:4:4" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "9096:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9109:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9120:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9105:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9105:17:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9052:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9052:71:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9052:71:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "9177:6:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9190:9:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9201:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9186:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9186:18:4" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9133:43:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9133:72:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9133:72:4" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "8970:9:4", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "8982:6:4", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "8990:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "9001:4:4", | |
"type": "" | |
} | |
], | |
"src": "8880:332:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9258:35:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9268:19:4", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9284:2:4", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "9278:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9278:9:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "9268:6:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "9251:6:4", | |
"type": "" | |
} | |
], | |
"src": "9218:75:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9371:60:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9381:11:4", | |
"value": { | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "9389:3:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9381:4:4" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9402:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "9414:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9419:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9410:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9410:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "data", | |
"nodeType": "YulIdentifier", | |
"src": "9402:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "9358:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "data", | |
"nodeType": "YulTypedName", | |
"src": "9366:4:4", | |
"type": "" | |
} | |
], | |
"src": "9299:132:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9511:40:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9522:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "9538:5:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "9532:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9532:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "9522:6:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "9494:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "9504:6:4", | |
"type": "" | |
} | |
], | |
"src": "9437:114:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9615:40:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9626:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "9642:5:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "9636:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9636:12:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "9626:6:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_bytes_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "9598:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "9608:6:4", | |
"type": "" | |
} | |
], | |
"src": "9557:98:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9736:38:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9746:22:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulIdentifier", | |
"src": "9758:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9763:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9754:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9754:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "next", | |
"nodeType": "YulIdentifier", | |
"src": "9746:4:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "ptr", | |
"nodeType": "YulTypedName", | |
"src": "9723:3:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "next", | |
"nodeType": "YulTypedName", | |
"src": "9731:4:4", | |
"type": "" | |
} | |
], | |
"src": "9661:113:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9891:73:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "9908:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "9913:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "9901:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9901:19:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9901:19:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9929:29:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "9948:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9953:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9944:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9944:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "9929:11:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "9863:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "9868:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "9879:11:4", | |
"type": "" | |
} | |
], | |
"src": "9780:184:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10065:73:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "10082:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "10087:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "10075:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10075:19:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10075:19:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10103:29:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "10122:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10127:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10118:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10118:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "10103:11:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "10037:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "10042:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "10053:11:4", | |
"type": "" | |
} | |
], | |
"src": "9970:168:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10240:73:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "10257:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "10262:6:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "10250:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10250:19:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10250:19:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10278:29:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "10297:3:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10302:4:4", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10293:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10293:14:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "10278:11:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "10212:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "10217:6:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "10228:11:4", | |
"type": "" | |
} | |
], | |
"src": "10144:169:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10363:261:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10373:25:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "10396:1:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "10378:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10378:20:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "10373:1:4" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10407:25:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "10430:1:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "10412:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10412:20:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "10407:1:4" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10570:22:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x11", | |
"nodeType": "YulIdentifier", | |
"src": "10572:16:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10572:18:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10572:18:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "10491:1:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10498:66:4", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "10566:1:4" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "10494:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10494:74:4" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "10488:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10488:81:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "10485:107:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10602:16:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "10613:1:4" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "10616:1:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10609:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10609:9:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "sum", | |
"nodeType": "YulIdentifier", | |
"src": "10602:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "checked_add_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "x", | |
"nodeType": "YulTypedName", | |
"src": "10350:1:4", | |
"type": "" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulTypedName", | |
"src": "10353:1:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "sum", | |
"nodeType": "YulTypedName", | |
"src": "10359:3:4", | |
"type": "" | |
} | |
], | |
"src": "10319:305:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10675:51:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10685:35:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10714:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulIdentifier", | |
"src": "10696:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10696:24:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "10685:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10657:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "10667:7:4", | |
"type": "" | |
} | |
], | |
"src": "10630:96:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10774:48:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10784:32:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10809:5:4" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "10802:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10802:13:4" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "10795:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10795:21:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "10784:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_bool", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10756:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "10766:7:4", | |
"type": "" | |
} | |
], | |
"src": "10732:90:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10873:32:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10883:16:4", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10894:5:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "10883:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10855:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "10865:7:4", | |
"type": "" | |
} | |
], | |
"src": "10828:77:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10956:81:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10966:65:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "10981:5:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10988:42:4", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "10977:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10977:54:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "10966:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "10938:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "10948:7:4", | |
"type": "" | |
} | |
], | |
"src": "10911:126:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11088:32:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11098:16:4", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11109:5:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "11098:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "11070:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "11080:7:4", | |
"type": "" | |
} | |
], | |
"src": "11043:77:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11175:258:4", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "11185:10:4", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11194:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "11189:1:4", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11254:63:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "11279:3:4" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11284:1:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11275:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11275:11:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "11298:3:4" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11303:1:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11294:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11294:11:4" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "11288:5:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11288:18:4" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11268:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11268:39:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11268:39:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11215:1:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "11218:6:4" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "11212:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11212:13:4" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "11226:19:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11228:15:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11237:1:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11240:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11233:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11233:10:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11228:1:4" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "11208:3:4", | |
"statements": [] | |
}, | |
"src": "11204:113:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11351:76:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "11401:3:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "11406:6:4" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11397:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11397:16:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11415:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11390:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11390:27:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11390:27:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "11332:1:4" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "11335:6:4" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "11329:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11329:13:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "11326:101:4" | |
} | |
] | |
}, | |
"name": "copy_memory_to_memory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "11157:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "dst", | |
"nodeType": "YulTypedName", | |
"src": "11162:3:4", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "11167:6:4", | |
"type": "" | |
} | |
], | |
"src": "11126:307:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11482:190:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11492:33:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11519:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "11501:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11501:24:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11492:5:4" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11615:22:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x11", | |
"nodeType": "YulIdentifier", | |
"src": "11617:16:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11617:18:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11617:18:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11540:5:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11547:66:4", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "11537:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11537:77:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "11534:103:4" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11646:20:4", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11657:5:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11664:1:4", | |
"type": "", | |
"value": "1" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11653:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11653:13:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulIdentifier", | |
"src": "11646:3:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "increment_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "11468:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "ret", | |
"nodeType": "YulTypedName", | |
"src": "11478:3:4", | |
"type": "" | |
} | |
], | |
"src": "11439:233:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11725:32:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11735:16:4", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11746:5:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulIdentifier", | |
"src": "11735:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "leftAlign_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "11707:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulTypedName", | |
"src": "11717:7:4", | |
"type": "" | |
} | |
], | |
"src": "11678:79:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11810:32:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11820:16:4", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "11831:5:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulIdentifier", | |
"src": "11820:7:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "leftAlign_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "11792:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulTypedName", | |
"src": "11802:7:4", | |
"type": "" | |
} | |
], | |
"src": "11763:79:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11876:152:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11893:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11896:77:4", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11886:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11886:88:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11886:88:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11990:1:4", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11993:4:4", | |
"type": "", | |
"value": "0x11" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11983:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11983:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11983:15:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12014:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12017:4:4", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "12007:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12007:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12007:15:4" | |
} | |
] | |
}, | |
"name": "panic_error_0x11", | |
"nodeType": "YulFunctionDefinition", | |
"src": "11848:180:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12062:152:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12079:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12082:77:4", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12072:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12072:88:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12072:88:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12176:1:4", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12179:4:4", | |
"type": "", | |
"value": "0x32" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12169:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12169:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12169:15:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12200:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12203:4:4", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "12193:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12193:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12193:15:4" | |
} | |
] | |
}, | |
"name": "panic_error_0x32", | |
"nodeType": "YulFunctionDefinition", | |
"src": "12034:180:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12248:152:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12265:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12268:77:4", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12258:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12258:88:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12258:88:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12362:1:4", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12365:4:4", | |
"type": "", | |
"value": "0x41" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12355:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12355:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12355:15:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12386:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12389:4:4", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "12379:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12379:15:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12379:15:4" | |
} | |
] | |
}, | |
"name": "panic_error_0x41", | |
"nodeType": "YulFunctionDefinition", | |
"src": "12220:180:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12495:28:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12512:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12515:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "12505:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12505:12:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12505:12:4" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "12406:117:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12618:28:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12635:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12638:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "12628:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12628:12:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12628:12:4" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "12529:117:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12700:54:4", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "12710:38:4", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "12728:5:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12735:2:4", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12724:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12724:14:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12744:2:4", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "12740:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12740:7:4" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "12720:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12720:28:4" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "12710:6:4" | |
} | |
] | |
} | |
] | |
}, | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "12683:5:4", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "12693:6:4", | |
"type": "" | |
} | |
], | |
"src": "12652:102:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12866:124:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "12888:6:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12896:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12884:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12884:14:4" | |
}, | |
{ | |
"hexValue": "4e6f7420656e6f756768204c494e4b202d2066696c6c20636f6e747261637420", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "12900:34:4", | |
"type": "", | |
"value": "Not enough LINK - fill contract " | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12877:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12877:58:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12877:58:4" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "12956:6:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12964:2:4", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12952:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12952:15:4" | |
}, | |
{ | |
"hexValue": "7769746820666175636574", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "12969:13:4", | |
"type": "", | |
"value": "with faucet" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12945:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12945:38:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12945:38:4" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "12858:6:4", | |
"type": "" | |
} | |
], | |
"src": "12760:230:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13102:75:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "13124:6:4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13132:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13120:3:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13120:14:4" | |
}, | |
{ | |
"hexValue": "4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "13136:33:4", | |
"type": "", | |
"value": "Only VRFCoordinator can fulfill" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "13113:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13113:57:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13113:57:4" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "13094:6:4", | |
"type": "" | |
} | |
], | |
"src": "12996:181:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13223:76:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13277:16:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13286:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13289:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "13279:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13279:12:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13279:12:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13246:5:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13268:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bool", | |
"nodeType": "YulIdentifier", | |
"src": "13253:14:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13253:21:4" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "13243:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13243:32:4" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "13236:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13236:40:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "13233:60:4" | |
} | |
] | |
}, | |
"name": "validator_revert_t_bool", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "13216:5:4", | |
"type": "" | |
} | |
], | |
"src": "13183:116:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13348:79:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13405:16:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13414:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13417:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "13407:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13407:12:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13407:12:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13371:5:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13396:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "13378:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13378:24:4" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "13368:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13368:35:4" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "13361:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13361:43:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "13358:63:4" | |
} | |
] | |
}, | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "13341:5:4", | |
"type": "" | |
} | |
], | |
"src": "13305:122:4" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13476:79:4", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13533:16:4", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13542:1:4", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13545:1:4", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "13535:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13535:12:4" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13535:12:4" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13499:5:4" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "13524:5:4" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "13506:17:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13506:24:4" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "13496:2:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13496:35:4" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "13489:6:4" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13489:43:4" | |
}, | |
"nodeType": "YulIf", | |
"src": "13486:63:4" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "13469:5:4", | |
"type": "" | |
} | |
], | |
"src": "13433:122:4" | |
} | |
] | |
}, | |
"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(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(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_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\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_bytes32t_uint256(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_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_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_uint256t_uint256(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_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 function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n store_literal_in_memory_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\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 mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_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_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\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 abi_encode_t_address_to_t_address_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_stringliteral_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74__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_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__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_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function 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 increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_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 round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function store_literal_in_memory_4bb3a9958b8c6e95beec57f36a0352593367170b4a84072c44b036bee3a36e74(memPtr) {\n\n mstore(add(memPtr, 0), \"Not enough LINK - fill contract \")\n\n mstore(add(memPtr, 32), \"with faucet\")\n\n }\n\n function store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445(memPtr) {\n\n mstore(add(memPtr, 0), \"Only VRFCoordinator can fulfill\")\n\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": 4, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": { | |
"73": [ | |
{ | |
"length": 32, | |
"start": 575 | |
}, | |
{ | |
"length": 32, | |
"start": 841 | |
} | |
], | |
"75": [ | |
{ | |
"length": 32, | |
"start": 414 | |
}, | |
{ | |
"length": 32, | |
"start": 901 | |
} | |
] | |
}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c806342619f6614610051578063874b3afc1461006f57806394985ddd1461009f578063dbdff2c1146100bb575b600080fd5b6100596100d9565b6040516100669190610910565b60405180910390f35b61008960048036038101906100849190610601565b6100df565b6040516100969190610825565b60405180910390f35b6100b960048036038101906100b49190610594565b61019c565b005b6100c3610238565b6040516100d09190610847565b60405180910390f35b60035481565b60608167ffffffffffffffff8111156100fb576100fa610b50565b5b6040519080825280602002602001820160405280156101295781602001602082028036833780820191505090505b50905060005b8281101561019557838160405160200161014a92919061092b565b6040516020818303038152906040528051906020012060001c82828151811061017657610175610b21565b5b602002602001018181525050808061018d90610a95565b91505061012f565b5092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461022a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610221906108f0565b60405180910390fd5b610234828261033a565b5050565b60006002547f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161029691906107cc565b60206040518083038186803b1580156102ae57600080fd5b505afa1580156102c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e691906105d4565b1015610327576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031e906108d0565b60405180910390fd5b610335600154600254610345565b905090565b806003819055505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634000aea07f0000000000000000000000000000000000000000000000000000000000000000848660006040516020016103b9929190610862565b6040516020818303038152906040526040518463ffffffff1660e01b81526004016103e6939291906107e7565b602060405180830381600087803b15801561040057600080fd5b505af1158015610414573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104389190610567565b50600061045a84600030600080898152602001908152602001600020546104a4565b905060016000808681526020019081526020016000205461047b91906109ba565b6000808681526020019081526020016000208190555061049b84826104e0565b91505092915050565b6000848484846040516020016104bd949392919061088b565b6040516020818303038152906040528051906020012060001c9050949350505050565b600082826040516020016104f59291906107a0565b60405160208183030381529060405280519060200120905092915050565b60008151905061052281610c0d565b92915050565b60008135905061053781610c24565b92915050565b60008135905061054c81610c3b565b92915050565b60008151905061056181610c3b565b92915050565b60006020828403121561057d5761057c610b7f565b5b600061058b84828501610513565b91505092915050565b600080604083850312156105ab576105aa610b7f565b5b60006105b985828601610528565b92505060206105ca8582860161053d565b9150509250929050565b6000602082840312156105ea576105e9610b7f565b5b60006105f884828501610552565b91505092915050565b6000806040838503121561061857610617610b7f565b5b60006106268582860161053d565b92505060206106378582860161053d565b9150509250929050565b600061064d838361076b565b60208301905092915050565b61066281610a10565b82525050565b600061067382610964565b61067d8185610987565b935061068883610954565b8060005b838110156106b95781516106a08882610641565b97506106ab8361097a565b92505060018101905061068c565b5085935050505092915050565b6106cf81610a2e565b82525050565b6106e66106e182610a2e565b610ade565b82525050565b60006106f78261096f565b6107018185610998565b9350610711818560208601610a62565b61071a81610b84565b840191505092915050565b6000610732602b836109a9565b915061073d82610b95565b604082019050919050565b6000610755601f836109a9565b915061076082610be4565b602082019050919050565b61077481610a58565b82525050565b61078381610a58565b82525050565b61079a61079582610a58565b610ae8565b82525050565b60006107ac82856106d5565b6020820191506107bc8284610789565b6020820191508190509392505050565b60006020820190506107e16000830184610659565b92915050565b60006060820190506107fc6000830186610659565b610809602083018561077a565b818103604083015261081b81846106ec565b9050949350505050565b6000602082019050818103600083015261083f8184610668565b905092915050565b600060208201905061085c60008301846106c6565b92915050565b600060408201905061087760008301856106c6565b610884602083018461077a565b9392505050565b60006080820190506108a060008301876106c6565b6108ad602083018661077a565b6108ba6040830185610659565b6108c7606083018461077a565b95945050505050565b600060208201905081810360008301526108e981610725565b9050919050565b6000602082019050818103600083015261090981610748565b9050919050565b6000602082019050610925600083018461077a565b92915050565b6000604082019050610940600083018561077a565b61094d602083018461077a565b9392505050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b60006109c582610a58565b91506109d083610a58565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610a0557610a04610af2565b5b828201905092915050565b6000610a1b82610a38565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015610a80578082015181840152602081019050610a65565b83811115610a8f576000848401525b50505050565b6000610aa082610a58565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610ad357610ad2610af2565b5b600182019050919050565b6000819050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f4e6f7420656e6f756768204c494e4b202d2066696c6c20636f6e74726163742060008201527f7769746820666175636574000000000000000000000000000000000000000000602082015250565b7f4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c00600082015250565b610c1681610a22565b8114610c2157600080fd5b50565b610c2d81610a2e565b8114610c3857600080fd5b50565b610c4481610a58565b8114610c4f57600080fd5b5056fea2646970667358221220b398c22e73c96e914b80862527e9a63253e7e07b77f3f77462b8fac18196b72a64736f6c63430008070033", | |
"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 0x42619F66 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x874B3AFC EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x94985DDD EQ PUSH2 0x9F JUMPI DUP1 PUSH4 0xDBDFF2C1 EQ PUSH2 0xBB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xD9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x910 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 0x601 JUMP JUMPDEST PUSH2 0xDF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x96 SWAP2 SWAP1 PUSH2 0x825 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB4 SWAP2 SWAP1 PUSH2 0x594 JUMP JUMPDEST PUSH2 0x19C JUMP JUMPDEST STOP JUMPDEST PUSH2 0xC3 PUSH2 0x238 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD0 SWAP2 SWAP1 PUSH2 0x847 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x3 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xFB JUMPI PUSH2 0xFA PUSH2 0xB50 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 0x129 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 DUP2 LT ISZERO PUSH2 0x195 JUMPI DUP4 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x14A SWAP3 SWAP2 SWAP1 PUSH2 0x92B 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 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x176 JUMPI PUSH2 0x175 PUSH2 0xB21 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 DUP2 MSTORE POP POP DUP1 DUP1 PUSH2 0x18D SWAP1 PUSH2 0xA95 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x12F JUMP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x22A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x221 SWAP1 PUSH2 0x8F0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x234 DUP3 DUP3 PUSH2 0x33A JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x296 SWAP2 SWAP1 PUSH2 0x7CC JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2C2 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 0x2E6 SWAP2 SWAP1 PUSH2 0x5D4 JUMP JUMPDEST LT ISZERO PUSH2 0x327 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31E SWAP1 PUSH2 0x8D0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x335 PUSH1 0x1 SLOAD PUSH1 0x2 SLOAD PUSH2 0x345 JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST DUP1 PUSH1 0x3 DUP2 SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP5 DUP7 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x3B9 SWAP3 SWAP2 SWAP1 PUSH2 0x862 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E6 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x7E7 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x400 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x414 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 0x438 SWAP2 SWAP1 PUSH2 0x567 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x45A DUP5 PUSH1 0x0 ADDRESS PUSH1 0x0 DUP1 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x4A4 JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x47B SWAP2 SWAP1 PUSH2 0x9BA JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x49B DUP5 DUP3 PUSH2 0x4E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4BD SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x88B 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 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4F5 SWAP3 SWAP2 SWAP1 PUSH2 0x7A0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x522 DUP2 PUSH2 0xC0D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x537 DUP2 PUSH2 0xC24 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x54C DUP2 PUSH2 0xC3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x561 DUP2 PUSH2 0xC3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x57D JUMPI PUSH2 0x57C PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x58B DUP5 DUP3 DUP6 ADD PUSH2 0x513 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x5AB JUMPI PUSH2 0x5AA PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5B9 DUP6 DUP3 DUP7 ADD PUSH2 0x528 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x5CA DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5EA JUMPI PUSH2 0x5E9 PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5F8 DUP5 DUP3 DUP6 ADD PUSH2 0x552 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x618 JUMPI PUSH2 0x617 PUSH2 0xB7F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x626 DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x637 DUP6 DUP3 DUP7 ADD PUSH2 0x53D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x64D DUP4 DUP4 PUSH2 0x76B JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x662 DUP2 PUSH2 0xA10 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x673 DUP3 PUSH2 0x964 JUMP JUMPDEST PUSH2 0x67D DUP2 DUP6 PUSH2 0x987 JUMP JUMPDEST SWAP4 POP PUSH2 0x688 DUP4 PUSH2 0x954 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x6B9 JUMPI DUP2 MLOAD PUSH2 0x6A0 DUP9 DUP3 PUSH2 0x641 JUMP JUMPDEST SWAP8 POP PUSH2 0x6AB DUP4 PUSH2 0x97A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x68C JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x6CF DUP2 PUSH2 0xA2E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x6E6 PUSH2 0x6E1 DUP3 PUSH2 0xA2E JUMP JUMPDEST PUSH2 0xADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F7 DUP3 PUSH2 0x96F JUMP JUMPDEST PUSH2 0x701 DUP2 DUP6 PUSH2 0x998 JUMP JUMPDEST SWAP4 POP PUSH2 0x711 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xA62 JUMP JUMPDEST PUSH2 0x71A DUP2 PUSH2 0xB84 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x732 PUSH1 0x2B DUP4 PUSH2 0x9A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x73D DUP3 PUSH2 0xB95 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x755 PUSH1 0x1F DUP4 PUSH2 0x9A9 JUMP JUMPDEST SWAP2 POP PUSH2 0x760 DUP3 PUSH2 0xBE4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x774 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x783 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x79A PUSH2 0x795 DUP3 PUSH2 0xA58 JUMP JUMPDEST PUSH2 0xAE8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AC DUP3 DUP6 PUSH2 0x6D5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x7BC DUP3 DUP5 PUSH2 0x789 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x7E1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x659 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x7FC PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x659 JUMP JUMPDEST PUSH2 0x809 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x77A JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x81B DUP2 DUP5 PUSH2 0x6EC JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x83F DUP2 DUP5 PUSH2 0x668 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x85C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6C6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x877 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x6C6 JUMP JUMPDEST PUSH2 0x884 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x8A0 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x6C6 JUMP JUMPDEST PUSH2 0x8AD PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x77A JUMP JUMPDEST PUSH2 0x8BA PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x659 JUMP JUMPDEST PUSH2 0x8C7 PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8E9 DUP2 PUSH2 0x725 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 0x909 DUP2 PUSH2 0x748 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x925 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x940 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x77A JUMP JUMPDEST PUSH2 0x94D PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x77A JUMP JUMPDEST SWAP4 SWAP3 POP POP 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9C5 DUP3 PUSH2 0xA58 JUMP JUMPDEST SWAP2 POP PUSH2 0x9D0 DUP4 PUSH2 0xA58 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0xA05 JUMPI PUSH2 0xA04 PUSH2 0xAF2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA1B DUP3 PUSH2 0xA38 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xA80 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xA65 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0xA8F JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAA0 DUP3 PUSH2 0xA58 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0xAD3 JUMPI PUSH2 0xAD2 PUSH2 0xAF2 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 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 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B202D2066696C6C20636F6E747261637420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7769746820666175636574000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0xC16 DUP2 PUSH2 0xA22 JUMP JUMPDEST DUP2 EQ PUSH2 0xC21 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xC2D DUP2 PUSH2 0xA2E JUMP JUMPDEST DUP2 EQ PUSH2 0xC38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0xC44 DUP2 PUSH2 0xA58 JUMP JUMPDEST DUP2 EQ PUSH2 0xC4F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB3 SWAP9 0xC2 0x2E PUSH20 0xC96E914B80862527E9A63253E7E07B77F3F77462 0xB8 STATICCALL 0xC1 DUP2 SWAP7 0xB7 0x2A PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ", | |
"sourceMap": "244:1781:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;365:27;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1587:307;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9639:225:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1156:219:3;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;365:27;;;;:::o;1587:307::-;1656:31;1730:1;1716:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1699:33;;1747:9;1742:123;1766:1;1762;:5;1742:123;;;1837:11;1850:1;1826:26;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1816:37;;;;;;1808:46;;1788:14;1803:1;1788:17;;;;;;;;:::i;:::-;;;;;;;:66;;;;;1769:3;;;;;:::i;:::-;;;;1742:123;;;;1587:307;;;;:::o;9639:225:0:-;9763:14;9749:28;;:10;:28;;;9741:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;9819:40;9837:9;9848:10;9819:17;:40::i;:::-;9639:225;;:::o;1156:219:3:-;1199:17;1269:3;;1236:4;:14;;;1259:4;1236:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:36;;1228:92;;;;;;;;;;;;:::i;:::-;;;;;;;;;1337:31;1355:7;;1364:3;;1337:17;:31::i;:::-;1330:38;;1156:219;:::o;1446:126::-;1555:10;1540:12;:25;;;;1446:126;;:::o;7752:1055:0:-;7856:17;7888:4;:20;;;7909:14;7925:4;7942:8;6609:1;7931:43;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7888:87;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8206:15;8225:82;8242:8;6609:1;8283:4;8290:6;:16;8297:8;8290:16;;;;;;;;;;;;8225;:82::i;:::-;8206:101;;8756:1;8737:6;:16;8744:8;8737:16;;;;;;;;;;;;:20;;;;:::i;:::-;8718:6;:16;8725:8;8718:16;;;;;;;;;;;:39;;;;8770:32;8784:8;8794:7;8770:13;:32::i;:::-;8763:39;;;7752:1055;;;;:::o;797:266:1:-;958:7;1016:8;1026:9;1037:10;1049:6;1005:51;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;995:62;;;;;;987:71;;980:78;;797:266;;;;;;:::o;1443:204::-;1561:7;1617:8;1627:13;1600:41;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1590:52;;;;;;1583:59;;1443:204;;;;:::o;7:137:4:-;61:5;92:6;86:13;77:22;;108:30;132:5;108:30;:::i;:::-;7:137;;;;:::o;150:139::-;196:5;234:6;221:20;212:29;;250:33;277:5;250:33;:::i;:::-;150:139;;;;:::o;295:::-;341:5;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;295:139;;;;:::o;440:143::-;497:5;528:6;522:13;513:22;;544:33;571:5;544:33;:::i;:::-;440:143;;;;:::o;589:345::-;656:6;705:2;693:9;684:7;680:23;676:32;673:119;;;711:79;;:::i;:::-;673:119;831:1;856:61;909:7;900:6;889:9;885:22;856:61;:::i;:::-;846:71;;802:125;589:345;;;;:::o;940:474::-;1008:6;1016;1065:2;1053:9;1044:7;1040:23;1036:32;1033:119;;;1071:79;;:::i;:::-;1033:119;1191:1;1216:53;1261:7;1252:6;1241:9;1237:22;1216:53;:::i;:::-;1206:63;;1162:117;1318:2;1344:53;1389:7;1380:6;1369:9;1365:22;1344:53;:::i;:::-;1334:63;;1289:118;940:474;;;;;:::o;1420:351::-;1490:6;1539:2;1527:9;1518:7;1514:23;1510:32;1507:119;;;1545:79;;:::i;:::-;1507:119;1665:1;1690:64;1746:7;1737:6;1726:9;1722:22;1690:64;:::i;:::-;1680:74;;1636:128;1420:351;;;;:::o;1777:474::-;1845:6;1853;1902:2;1890:9;1881:7;1877:23;1873:32;1870:119;;;1908:79;;:::i;:::-;1870:119;2028:1;2053:53;2098:7;2089:6;2078:9;2074:22;2053:53;:::i;:::-;2043:63;;1999:117;2155:2;2181:53;2226:7;2217:6;2206:9;2202:22;2181:53;:::i;:::-;2171:63;;2126:118;1777:474;;;;;:::o;2257:179::-;2326:10;2347:46;2389:3;2381:6;2347:46;:::i;:::-;2425:4;2420:3;2416:14;2402:28;;2257:179;;;;:::o;2442:118::-;2529:24;2547:5;2529:24;:::i;:::-;2524:3;2517:37;2442:118;;:::o;2596:732::-;2715:3;2744:54;2792:5;2744:54;:::i;:::-;2814:86;2893:6;2888:3;2814:86;:::i;:::-;2807:93;;2924:56;2974:5;2924:56;:::i;:::-;3003:7;3034:1;3019:284;3044:6;3041:1;3038:13;3019:284;;;3120:6;3114:13;3147:63;3206:3;3191:13;3147:63;:::i;:::-;3140:70;;3233:60;3286:6;3233:60;:::i;:::-;3223:70;;3079:224;3066:1;3063;3059:9;3054:14;;3019:284;;;3023:14;3319:3;3312:10;;2720:608;;;2596:732;;;;:::o;3334:118::-;3421:24;3439:5;3421:24;:::i;:::-;3416:3;3409:37;3334:118;;:::o;3458:157::-;3563:45;3583:24;3601:5;3583:24;:::i;:::-;3563:45;:::i;:::-;3558:3;3551:58;3458:157;;:::o;3621:360::-;3707:3;3735:38;3767:5;3735:38;:::i;:::-;3789:70;3852:6;3847:3;3789:70;:::i;:::-;3782:77;;3868:52;3913:6;3908:3;3901:4;3894:5;3890:16;3868:52;:::i;:::-;3945:29;3967:6;3945:29;:::i;:::-;3940:3;3936:39;3929:46;;3711:270;3621:360;;;;:::o;3987:366::-;4129:3;4150:67;4214:2;4209:3;4150:67;:::i;:::-;4143:74;;4226:93;4315:3;4226:93;:::i;:::-;4344:2;4339:3;4335:12;4328:19;;3987:366;;;:::o;4359:::-;4501:3;4522:67;4586:2;4581:3;4522:67;:::i;:::-;4515:74;;4598:93;4687:3;4598:93;:::i;:::-;4716:2;4711:3;4707:12;4700:19;;4359:366;;;:::o;4731:108::-;4808:24;4826:5;4808:24;:::i;:::-;4803:3;4796:37;4731:108;;:::o;4845:118::-;4932:24;4950:5;4932:24;:::i;:::-;4927:3;4920:37;4845:118;;:::o;4969:157::-;5074:45;5094:24;5112:5;5094:24;:::i;:::-;5074:45;:::i;:::-;5069:3;5062:58;4969:157;;:::o;5132:397::-;5272:3;5287:75;5358:3;5349:6;5287:75;:::i;:::-;5387:2;5382:3;5378:12;5371:19;;5400:75;5471:3;5462:6;5400:75;:::i;:::-;5500:2;5495:3;5491:12;5484:19;;5520:3;5513:10;;5132:397;;;;;:::o;5535:222::-;5628:4;5666:2;5655:9;5651:18;5643:26;;5679:71;5747:1;5736:9;5732:17;5723:6;5679:71;:::i;:::-;5535:222;;;;:::o;5763:529::-;5930:4;5968:2;5957:9;5953:18;5945:26;;5981:71;6049:1;6038:9;6034:17;6025:6;5981:71;:::i;:::-;6062:72;6130:2;6119:9;6115:18;6106:6;6062:72;:::i;:::-;6181:9;6175:4;6171:20;6166:2;6155:9;6151:18;6144:48;6209:76;6280:4;6271:6;6209:76;:::i;:::-;6201:84;;5763:529;;;;;;:::o;6298:373::-;6441:4;6479:2;6468:9;6464:18;6456:26;;6528:9;6522:4;6518:20;6514:1;6503:9;6499:17;6492:47;6556:108;6659:4;6650:6;6556:108;:::i;:::-;6548:116;;6298:373;;;;:::o;6677:222::-;6770:4;6808:2;6797:9;6793:18;6785:26;;6821:71;6889:1;6878:9;6874:17;6865:6;6821:71;:::i;:::-;6677:222;;;;:::o;6905:332::-;7026:4;7064:2;7053:9;7049:18;7041:26;;7077:71;7145:1;7134:9;7130:17;7121:6;7077:71;:::i;:::-;7158:72;7226:2;7215:9;7211:18;7202:6;7158:72;:::i;:::-;6905:332;;;;;:::o;7243:553::-;7420:4;7458:3;7447:9;7443:19;7435:27;;7472:71;7540:1;7529:9;7525:17;7516:6;7472:71;:::i;:::-;7553:72;7621:2;7610:9;7606:18;7597:6;7553:72;:::i;:::-;7635;7703:2;7692:9;7688:18;7679:6;7635:72;:::i;:::-;7717;7785:2;7774:9;7770:18;7761:6;7717:72;:::i;:::-;7243:553;;;;;;;:::o;7802:419::-;7968:4;8006:2;7995:9;7991:18;7983:26;;8055:9;8049:4;8045:20;8041:1;8030:9;8026:17;8019:47;8083:131;8209:4;8083:131;:::i;:::-;8075:139;;7802:419;;;:::o;8227:::-;8393:4;8431:2;8420:9;8416:18;8408:26;;8480:9;8474:4;8470:20;8466:1;8455:9;8451:17;8444:47;8508:131;8634:4;8508:131;:::i;:::-;8500:139;;8227:419;;;:::o;8652:222::-;8745:4;8783:2;8772:9;8768:18;8760:26;;8796:71;8864:1;8853:9;8849:17;8840:6;8796:71;:::i;:::-;8652:222;;;;:::o;8880:332::-;9001:4;9039:2;9028:9;9024:18;9016:26;;9052:71;9120:1;9109:9;9105:17;9096:6;9052:71;:::i;:::-;9133:72;9201:2;9190:9;9186:18;9177:6;9133:72;:::i;:::-;8880:332;;;;;:::o;9299:132::-;9366:4;9389:3;9381:11;;9419:4;9414:3;9410:14;9402:22;;9299:132;;;:::o;9437:114::-;9504:6;9538:5;9532:12;9522:22;;9437:114;;;:::o;9557:98::-;9608:6;9642:5;9636:12;9626:22;;9557:98;;;:::o;9661:113::-;9731:4;9763;9758:3;9754:14;9746:22;;9661:113;;;:::o;9780:184::-;9879:11;9913:6;9908:3;9901:19;9953:4;9948:3;9944:14;9929:29;;9780:184;;;;:::o;9970:168::-;10053:11;10087:6;10082:3;10075:19;10127:4;10122:3;10118:14;10103:29;;9970:168;;;;:::o;10144:169::-;10228:11;10262:6;10257:3;10250:19;10302:4;10297:3;10293:14;10278:29;;10144:169;;;;:::o;10319:305::-;10359:3;10378:20;10396:1;10378:20;:::i;:::-;10373:25;;10412:20;10430:1;10412:20;:::i;:::-;10407:25;;10566:1;10498:66;10494:74;10491:1;10488:81;10485:107;;;10572:18;;:::i;:::-;10485:107;10616:1;10613;10609:9;10602:16;;10319:305;;;;:::o;10630:96::-;10667:7;10696:24;10714:5;10696:24;:::i;:::-;10685:35;;10630:96;;;:::o;10732:90::-;10766:7;10809:5;10802:13;10795:21;10784:32;;10732:90;;;:::o;10828:77::-;10865:7;10894:5;10883:16;;10828:77;;;:::o;10911:126::-;10948:7;10988:42;10981:5;10977:54;10966:65;;10911:126;;;:::o;11043:77::-;11080:7;11109:5;11098:16;;11043:77;;;:::o;11126:307::-;11194:1;11204:113;11218:6;11215:1;11212:13;11204:113;;;11303:1;11298:3;11294:11;11288:18;11284:1;11279:3;11275:11;11268:39;11240:2;11237:1;11233:10;11228:15;;11204:113;;;11335:6;11332:1;11329:13;11326:101;;;11415:1;11406:6;11401:3;11397:16;11390:27;11326:101;11175:258;11126:307;;;:::o;11439:233::-;11478:3;11501:24;11519:5;11501:24;:::i;:::-;11492:33;;11547:66;11540:5;11537:77;11534:103;;;11617:18;;:::i;:::-;11534:103;11664:1;11657:5;11653:13;11646:20;;11439:233;;;:::o;11678:79::-;11717:7;11746:5;11735:16;;11678:79;;;:::o;11763:::-;11802:7;11831:5;11820:16;;11763:79;;;:::o;11848:180::-;11896:77;11893:1;11886:88;11993:4;11990:1;11983:15;12017:4;12014:1;12007:15;12034:180;12082:77;12079:1;12072:88;12179:4;12176:1;12169:15;12203:4;12200:1;12193:15;12220:180;12268:77;12265:1;12258:88;12365:4;12362:1;12355:15;12389:4;12386:1;12379:15;12529:117;12638:1;12635;12628:12;12652:102;12693:6;12744:2;12740:7;12735:2;12728:5;12724:14;12720:28;12710:38;;12652:102;;;:::o;12760:230::-;12900:34;12896:1;12888:6;12884:14;12877:58;12969:13;12964:2;12956:6;12952:15;12945:38;12760:230;:::o;12996:181::-;13136:33;13132:1;13124:6;13120:14;13113:57;12996:181;:::o;13183:116::-;13253:21;13268:5;13253:21;:::i;:::-;13246:5;13243:32;13233:60;;13289:1;13286;13279:12;13233:60;13183:116;:::o;13305:122::-;13378:24;13396:5;13378:24;:::i;:::-;13371:5;13368:35;13358:63;;13417:1;13414;13407:12;13358:63;13305:122;:::o;13433:::-;13506:24;13524:5;13506:24;:::i;:::-;13499:5;13496:35;13486:63;;13545:1;13542;13535:12;13486:63;13433:122;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "641600", | |
"executionCost": "infinite", | |
"totalCost": "infinite" | |
}, | |
"external": { | |
"expand(uint256,uint256)": "infinite", | |
"getRandomNumber()": "infinite", | |
"randomResult()": "2407", | |
"rawFulfillRandomness(bytes32,uint256)": "infinite" | |
}, | |
"internal": { | |
"fulfillRandomness(bytes32,uint256)": "22127" | |
} | |
}, | |
"methodIdentifiers": { | |
"expand(uint256,uint256)": "874b3afc", | |
"getRandomNumber()": "dbdff2c1", | |
"randomResult()": "42619f66", | |
"rawFulfillRandomness(bytes32,uint256)": "94985ddd" | |
} | |
}, | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "randomValue", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "n", | |
"type": "uint256" | |
} | |
], | |
"name": "expand", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "expandedValues", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "pure", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "getRandomNumber", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "randomResult", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "randomness", | |
"type": "uint256" | |
} | |
], | |
"name": "rawFulfillRandomness", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"compiler": { | |
"version": "0.8.7+commit.e28d00a7" | |
}, | |
"language": "Solidity", | |
"output": { | |
"abi": [ | |
{ | |
"inputs": [], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "randomValue", | |
"type": "uint256" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "n", | |
"type": "uint256" | |
} | |
], | |
"name": "expand", | |
"outputs": [ | |
{ | |
"internalType": "uint256[]", | |
"name": "expandedValues", | |
"type": "uint256[]" | |
} | |
], | |
"stateMutability": "pure", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "getRandomNumber", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "randomResult", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "randomness", | |
"type": "uint256" | |
} | |
], | |
"name": "rawFulfillRandomness", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"kind": "dev", | |
"methods": {}, | |
"version": 1 | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": { | |
"constructor": { | |
"notice": "Constructor inherits VRFConsumerBase Network: Kovan Chainlink VRF Coordinator address: 0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9 LINK token address: 0xa36085F69e2889c224210F603D836748e7dC0088 Key Hash: 0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4" | |
}, | |
"getRandomNumber()": { | |
"notice": "Requests randomness " | |
} | |
}, | |
"notice": "THIS IS AN EXAMPLE CONTRACT WHICH USES HARDCODED VALUES FOR CLARITY. PLEASE DO NOT USE THIS CODE IN PRODUCTION.", | |
"version": 1 | |
} | |
}, | |
"settings": { | |
"compilationTarget": { | |
"docs.chain.link/samples/VRF/RandomNumberConsumer.sol": "RandomNumberConsumer" | |
}, | |
"evmVersion": "london", | |
"libraries": {}, | |
"metadata": { | |
"bytecodeHash": "ipfs" | |
}, | |
"optimizer": { | |
"enabled": false, | |
"runs": 200 | |
}, | |
"remappings": [] | |
}, | |
"sources": { | |
"@chainlink/contracts/src/v0.8/VRFConsumerBase.sol": { | |
"keccak256": "0x991e49ee47043d6667887d7ed6ab5a0f8e4e5550f92b09b0d75c1fb1a473cd8d", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://a688c48fa681a7958d5cbb4e1845290ae317e2dfa1a059faae44c69d83409414", | |
"dweb:/ipfs/Qmb5Gpjya5VJ9LnwkEBfMr5DtDH462VBjXcA6uAU2f1Vj9" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/VRFRequestIDBase.sol": { | |
"keccak256": "0x7c8dad07e6c6c9269d97fd1191ccf9c0f0068683f1f88003e688eef9373de0d9", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://1d88c83a359c70f6b2e2e05d8f7611cce4a3d316a65e5175e14bcf9a6ced98af", | |
"dweb:/ipfs/QmeH3BEuVvaaQsz7sN5myEnFLoabTG4j85vS9Z6rfJkads" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol": { | |
"keccak256": "0x50528c237386c55ff122d047f91b32be7abe24e9dfdc609de21cd605aae83b9a", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://92037bd13b34432f9377cb205c0039bd0724af66ea605598db31d4ccd33f879f", | |
"dweb:/ipfs/QmdH6Ef5PZgcPrJuWboLX5MhmezzTFniZCwJ6fk2tYVua4" | |
] | |
}, | |
"docs.chain.link/samples/VRF/RandomNumberConsumer.sol": { | |
"keccak256": "0xd0ad7dfebeaea8f02bde57bcc09e985d402f16db14590614d8923ac142fca116", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://5768bba1068f249ea1ec6dbe9033be56c131064f7fb84f4cec2f16729ee4b0b5", | |
"dweb:/ipfs/QmPM5CyecKJ5jCZzreV3aj4Vcpn8qkHvuNnWRqt32YDVvm" | |
] | |
} | |
}, | |
"version": 1 | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"deploy": { | |
"VM:-": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"main:1": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"ropsten:3": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"rinkeby:4": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"kovan:42": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"görli:5": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
}, | |
"Custom": { | |
"linkReferences": {}, | |
"autoDeployLib": true | |
} | |
}, | |
"data": { | |
"bytecode": { | |
"functionDebugData": { | |
"@_18": { | |
"entryPoint": null, | |
"id": 18, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"@_280": { | |
"entryPoint": null, | |
"id": 280, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@_526": { | |
"entryPoint": null, | |
"id": 526, | |
"parameterSlots": 4, | |
"returnSlots": 0 | |
}, | |
"@_75": { | |
"entryPoint": null, | |
"id": 75, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@_transferOwnership_159": { | |
"entryPoint": 451, | |
"id": 159, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"abi_decode_t_address_fromMemory": { | |
"entryPoint": 757, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_bytes32_fromMemory": { | |
"entryPoint": 780, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256_fromMemory": { | |
"entryPoint": 803, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_addresst_addresst_bytes32t_uint256_fromMemory": { | |
"entryPoint": 826, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 4 | |
}, | |
"abi_encode_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 940, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 979, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1018, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 1052, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { | |
"entryPoint": 1086, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_address": { | |
"entryPoint": 1103, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_bytes32": { | |
"entryPoint": 1123, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint160": { | |
"entryPoint": 1133, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 1165, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 1175, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2": { | |
"entryPoint": 1180, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2": { | |
"entryPoint": 1221, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_address": { | |
"entryPoint": 1262, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_bytes32": { | |
"entryPoint": 1288, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint256": { | |
"entryPoint": 1314, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:4516:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "70:80:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "80:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "95:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "89:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "89:13:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "80:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "138:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "111:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "111:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "111:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_address_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "48:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "56:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "64:5:7", | |
"type": "" | |
} | |
], | |
"src": "7:143:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "219:80:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "229:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "244:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "238:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "238:13:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "229:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "287:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "260:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "260:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "260:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_bytes32_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "197:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "205:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "213:5:7", | |
"type": "" | |
} | |
], | |
"src": "156:143:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "368:80:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "378:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "393:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "387:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "387:13:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "378:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "436:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "409:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "409:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "409:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "346:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "354:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "362:5:7", | |
"type": "" | |
} | |
], | |
"src": "305:143:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "582:692:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "629:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "631:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "631:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "631:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "603:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "612:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "599:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "599:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "624:3:7", | |
"type": "", | |
"value": "128" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "595:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "595:33:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "592:120:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "722:128:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "737:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "751:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "741:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "766:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "812:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "823:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "808:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "808:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "832:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "776:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "776:64:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "766:6:7" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "860:129:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "875:16:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "889:2:7", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "879:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "905:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "951:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "962:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "947:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "947:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "971:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "915:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "915:64:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "905:6:7" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "999:129:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1014:16:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1028:2:7", | |
"type": "", | |
"value": "64" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1018:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1044:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1090:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1101:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1086:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1086:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1110:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bytes32_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1054:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1054:64:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "1044:6:7" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1138:129:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1153:16:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1167:2:7", | |
"type": "", | |
"value": "96" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1157:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1183:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1229:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1240:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1225:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1225:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1249:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1193:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1193:64:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value3", | |
"nodeType": "YulIdentifier", | |
"src": "1183:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_addresst_addresst_bytes32t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "528:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "539:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "551:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "559:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "567:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value3", | |
"nodeType": "YulTypedName", | |
"src": "575:6:7", | |
"type": "" | |
} | |
], | |
"src": "454:820:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1426:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1436:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1502:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1507:2:7", | |
"type": "", | |
"value": "24" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "1443:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1443:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1436:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1608:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2", | |
"nodeType": "YulIdentifier", | |
"src": "1519:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1519:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1519:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1621:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1632:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1637:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1628:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1628:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "1621:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "1414:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "1422:3:7", | |
"type": "" | |
} | |
], | |
"src": "1280:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1798:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1808:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1874:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1879:2:7", | |
"type": "", | |
"value": "23" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "1815:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1815:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1808:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "1980:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2", | |
"nodeType": "YulIdentifier", | |
"src": "1891:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1891:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1891:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1993:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "2004:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2009:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2000:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2000:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "1993:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "1786:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "1794:3:7", | |
"type": "" | |
} | |
], | |
"src": "1652:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2195:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2205:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2217:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2228:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2213:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2213:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2205:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2252:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2263:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2248:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2248:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2271:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2277:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "2267:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2267:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2241:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2241:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2241:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2297:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2431:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "2305:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2305:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2297:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2175:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "2190:4:7", | |
"type": "" | |
} | |
], | |
"src": "2024:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2620:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2630:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2642:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2653:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2638:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2638:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2630:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2677:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2688:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2673:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2673:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2696:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2702:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "2692:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2692:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "2666:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2666:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2666:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2722:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2856:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "2730:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2730:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "2722:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2600:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "2615:4:7", | |
"type": "" | |
} | |
], | |
"src": "2449:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2914:35:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2924:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2940:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "2934:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2934:9:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "2924:6:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "2907:6:7", | |
"type": "" | |
} | |
], | |
"src": "2874:75:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3051:73:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3068:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "3073:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3061:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3061:19:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3061:19:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3089:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3108:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3113:4:7", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3104:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3104:14:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "3089:11:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3023:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "3028:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "3039:11:7", | |
"type": "" | |
} | |
], | |
"src": "2955:169:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3175:51:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3185:35:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3214:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulIdentifier", | |
"src": "3196:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3196:24:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "3185:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3157:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "3167:7:7", | |
"type": "" | |
} | |
], | |
"src": "3130:96:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3277:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3287:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3298:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "3287:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3259:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "3269:7:7", | |
"type": "" | |
} | |
], | |
"src": "3232:77:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3360:81:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3370:65:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3385:5:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3392:42:7", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "3381:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3381:54:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "3370:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3342:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "3352:7:7", | |
"type": "" | |
} | |
], | |
"src": "3315:126:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3492:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3502:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3513:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "3502:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3474:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "3484:7:7", | |
"type": "" | |
} | |
], | |
"src": "3447:77:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3619:28:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3636:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3639:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "3629:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3629:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3629:12:7" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "3530:117:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3742:28:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3759:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3762:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "3752:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3752:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3752:12:7" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "3653:117:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3882:68:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "3904:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3912:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3900:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3900:14:7" | |
}, | |
{ | |
"hexValue": "43616e6e6f7420736574206f776e657220746f207a65726f", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "3916:26:7", | |
"type": "", | |
"value": "Cannot set owner to zero" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3893:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3893:50:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3893:50:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "3874:6:7", | |
"type": "" | |
} | |
], | |
"src": "3776:174:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4062:67:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "4084:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4092:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4080:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4080:14:7" | |
}, | |
{ | |
"hexValue": "43616e6e6f74207472616e7366657220746f2073656c66", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "4096:25:7", | |
"type": "", | |
"value": "Cannot transfer to self" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "4073:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4073:49:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4073:49:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "4054:6:7", | |
"type": "" | |
} | |
], | |
"src": "3956:173:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4178:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4235:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4244:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4247:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "4237:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4237:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4237:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4201:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4226:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "4208:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4208:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "4198:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4198:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "4191:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4191:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "4188:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4171:5:7", | |
"type": "" | |
} | |
], | |
"src": "4135:122:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4306:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4363:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4372:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4375:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "4365:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4365:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4365:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4329:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4354:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "4336:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4336:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "4326:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4326:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "4319:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4319:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "4316:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4299:5:7", | |
"type": "" | |
} | |
], | |
"src": "4263:122:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4434:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4491:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4500:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4503:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "4493:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4493:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4493:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4457:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4482:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "4464:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4464:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "4454:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4454:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "4447:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4447:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "4444:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4427:5:7", | |
"type": "" | |
} | |
], | |
"src": "4391:122:7" | |
} | |
] | |
}, | |
"contents": "{\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(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_addresst_addresst_bytes32t_uint256_fromMemory(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2__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_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__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_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_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_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function 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_7dca76038b520c88e70cf97566ce5d47f70366a14444d2decb0ce7bf6a19e7c2(memPtr) {\n\n mstore(add(memPtr, 0), \"Cannot set owner to zero\")\n\n }\n\n function store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2(memPtr) {\n\n mstore(add(memPtr, 0), \"Cannot transfer to self\")\n\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", | |
"id": 7, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"linkReferences": {}, | |
"object": "60c06040523480156200001157600080fd5b50604051620022a2380380620022a283398181016040528101906200003791906200033a565b3380600086868173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250505050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000120576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200011790620003fa565b60405180910390fd5b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614620001a857620001a781620001c360201b60201c565b5b5050508160038190555080600481905550505050506200053c565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141562000235576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200022c906200041c565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae127860405160405180910390a350565b6000815190506200030681620004ee565b92915050565b6000815190506200031d8162000508565b92915050565b600081519050620003348162000522565b92915050565b6000806000806080858703121562000357576200035662000497565b5b60006200036787828801620002f5565b94505060206200037a87828801620002f5565b93505060406200038d878288016200030c565b9250506060620003a08782880162000323565b91505092959194509250565b6000620003bb6018836200043e565b9150620003c8826200049c565b602082019050919050565b6000620003e26017836200043e565b9150620003ef82620004c5565b602082019050919050565b600060208201905081810360008301526200041581620003ac565b9050919050565b600060208201905081810360008301526200043781620003d3565b9050919050565b600082825260208201905092915050565b60006200045c826200046d565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600080fd5b7f43616e6e6f7420736574206f776e657220746f207a65726f0000000000000000600082015250565b7f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000600082015250565b620004f9816200044f565b81146200050557600080fd5b50565b620005138162000463565b81146200051f57600080fd5b50565b6200052d816200048d565b81146200053957600080fd5b50565b60805160601c60a05160601c611d256200057d600039600081816103dd0152610fd0015260008181610481015281816106e70152610f940152611d256000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063983fbab211610071578063983fbab21461012c5780639854471014610148578063b1cad5e314610164578063dd02d9e514610194578063ddca3f43146101c4578063f2fde38b146101e2576100a9565b806361728f39146100ae57806369fe0e2d146100cc57806379ba5097146100e85780638da5cb5b146100f257806394985ddd14610110575b600080fd5b6100b66101fe565b6040516100c3919061170d565b60405180910390f35b6100e660048036038101906100e191906113fd565b610208565b005b6100f061021a565b005b6100fa6103b1565b604051610107919061168b565b60405180910390f35b61012a600480360381019061012591906113bd565b6103db565b005b61014660048036038101906101419190611323565b610477565b005b610162600480360381019061015d9190611390565b61056f565b005b61017e600480360381019061017991906112f6565b610581565b60405161018b9190611796565b60405180910390f35b6101ae60048036038101906101a991906112f6565b6106d8565b6040516101bb919061170d565b60405180910390f35b6101cc610941565b6040516101d991906118d8565b60405180910390f35b6101fc60048036038101906101f791906112f6565b61094b565b005b6000600354905090565b61021061095f565b8060048190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102a1906117b8565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046090611858565b60405180910390fd5b61047382826109f1565b5050565b61047f61095f565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016104da9291906116a6565b602060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052c9190611363565b61056b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056290611838565b60405180910390fd5b5050565b61057761095f565b8060038190555050565b60606000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105fd90611818565b60405180910390fd5b602a600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610689576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610680906117f8565b60405180910390fd5b6106d1600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab8565b9050919050565b60006106e261095f565b6004547f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161073e919061168b565b60206040518083038186803b15801561075657600080fd5b505afa15801561076a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078e919061142a565b10156107cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c690611878565b60405180910390fd5b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610851576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610848906118b8565b60405180910390fd5b61085f600354600454610f90565b9050816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602a600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16817f923de4fc4aece24a78a9e4ca3009c571a742f81ac2c004a229224b0fd1883bdd60405160405180910390a3919050565b6000600454905090565b61095361095f565b61095c816110ef565b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e6906117d8565b60405180910390fd5b565b60006001601483610a029190611a4e565b610a0c919061192b565b905080600660006005600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080837f909dd726737b7ffa4ae9d137e9edebe8a74a9c2910a4b60e8112f93ab217083760405160405180910390a3505050565b606060006040518061028001604052806040518060400160405280600981526020017f54617267617279656e000000000000000000000000000000000000000000000081525081526020016040518060400160405280600981526020017f4c616e6e6973746572000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f537461726b00000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f547972656c6c000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600981526020017f426172617468656f6e000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f4d617274656c6c0000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f54756c6c7900000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f426f6c746f6e000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f477265796a6f790000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f417272796e00000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f467265790000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f4d6f726d6f6e740000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f5461726c6579000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f4461796e6500000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f556d62657200000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f56616c6572796f6e00000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f4d616e6465726c7900000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f436c6567616e650000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f476c6f766572000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f4b6172737461726b000000000000000000000000000000000000000000000000815250815250905080600184610f729190611981565b60148110610f8357610f82611add565b5b6020020151915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634000aea07f000000000000000000000000000000000000000000000000000000000000000084866000604051602001611004929190611728565b6040516020818303038152906040526040518463ffffffff1660e01b8152600401611031939291906116cf565b602060405180830381600087803b15801561104b57600080fd5b505af115801561105f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110839190611363565b5060006110a5846000306000808981526020019081526020016000205461121e565b90506001600080868152602001908152602001600020546110c6919061192b565b600080868152602001908152602001600020819055506110e6848261125a565b91505092915050565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561115e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115590611898565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae127860405160405180910390a350565b6000848484846040516020016112379493929190611751565b6040516020818303038152906040528051906020012060001c9050949350505050565b6000828260405160200161126f92919061165f565b60405160208183030381529060405280519060200120905092915050565b60008135905061129c81611c93565b92915050565b6000815190506112b181611caa565b92915050565b6000813590506112c681611cc1565b92915050565b6000813590506112db81611cd8565b92915050565b6000815190506112f081611cd8565b92915050565b60006020828403121561130c5761130b611b0c565b5b600061131a8482850161128d565b91505092915050565b6000806040838503121561133a57611339611b0c565b5b60006113488582860161128d565b9250506020611359858286016112cc565b9150509250929050565b60006020828403121561137957611378611b0c565b5b6000611387848285016112a2565b91505092915050565b6000602082840312156113a6576113a5611b0c565b5b60006113b4848285016112b7565b91505092915050565b600080604083850312156113d4576113d3611b0c565b5b60006113e2858286016112b7565b92505060206113f3858286016112cc565b9150509250929050565b60006020828403121561141357611412611b0c565b5b6000611421848285016112cc565b91505092915050565b6000602082840312156114405761143f611b0c565b5b600061144e848285016112e1565b91505092915050565b611460816119b5565b82525050565b61146f816119d3565b82525050565b611486611481826119d3565b611a3a565b82525050565b6000611497826118f3565b6114a18185611909565b93506114b1818560208601611a07565b6114ba81611b11565b840191505092915050565b60006114d0826118fe565b6114da818561191a565b93506114ea818560208601611a07565b6114f381611b11565b840191505092915050565b600061150b60168361191a565b915061151682611b22565b602082019050919050565b600061152e60168361191a565b915061153982611b4b565b602082019050919050565b600061155160108361191a565b915061155c82611b74565b602082019050919050565b6000611574600f8361191a565b915061157f82611b9d565b602082019050919050565b6000611597600f8361191a565b91506115a282611bc6565b602082019050919050565b60006115ba601f8361191a565b91506115c582611bef565b602082019050919050565b60006115dd601a8361191a565b91506115e882611c18565b602082019050919050565b600061160060178361191a565b915061160b82611c41565b602082019050919050565b6000611623600e8361191a565b915061162e82611c6a565b602082019050919050565b611642816119fd565b82525050565b611659611654826119fd565b611a44565b82525050565b600061166b8285611475565b60208201915061167b8284611648565b6020820191508190509392505050565b60006020820190506116a06000830184611457565b92915050565b60006040820190506116bb6000830185611457565b6116c86020830184611639565b9392505050565b60006060820190506116e46000830186611457565b6116f16020830185611639565b8181036040830152611703818461148c565b9050949350505050565b60006020820190506117226000830184611466565b92915050565b600060408201905061173d6000830185611466565b61174a6020830184611639565b9392505050565b60006080820190506117666000830187611466565b6117736020830186611639565b6117806040830185611457565b61178d6060830184611639565b95945050505050565b600060208201905081810360008301526117b081846114c5565b905092915050565b600060208201905081810360008301526117d1816114fe565b9050919050565b600060208201905081810360008301526117f181611521565b9050919050565b6000602082019050818103600083015261181181611544565b9050919050565b6000602082019050818103600083015261183181611567565b9050919050565b600060208201905081810360008301526118518161158a565b9050919050565b60006020820190508181036000830152611871816115ad565b9050919050565b60006020820190508181036000830152611891816115d0565b9050919050565b600060208201905081810360008301526118b1816115f3565b9050919050565b600060208201905081810360008301526118d181611616565b9050919050565b60006020820190506118ed6000830184611639565b92915050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611936826119fd565b9150611941836119fd565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561197657611975611a7f565b5b828201905092915050565b600061198c826119fd565b9150611997836119fd565b9250828210156119aa576119a9611a7f565b5b828203905092915050565b60006119c0826119dd565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015611a25578082015181840152602081019050611a0a565b83811115611a34576000848401525b50505050565b6000819050919050565b6000819050919050565b6000611a59826119fd565b9150611a64836119fd565b925082611a7457611a73611aae565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f4d7573742062652070726f706f736564206f776e657200000000000000000000600082015250565b7f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000600082015250565b7f526f6c6c20696e2070726f677265737300000000000000000000000000000000600082015250565b7f44696365206e6f7420726f6c6c65640000000000000000000000000000000000600082015250565b7f4e6f7420656e6f756768204c494e4b0000000000000000000000000000000000600082015250565b7f4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c00600082015250565b7f4e6f7420656e6f756768204c494e4b20746f2070617920666565000000000000600082015250565b7f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000600082015250565b7f416c726561647920726f6c6c6564000000000000000000000000000000000000600082015250565b611c9c816119b5565b8114611ca757600080fd5b50565b611cb3816119c7565b8114611cbe57600080fd5b50565b611cca816119d3565b8114611cd557600080fd5b50565b611ce1816119fd565b8114611cec57600080fd5b5056fea26469706673582212205c603d7221c2c6c0ab14db8aa6e0b3da3ed175ee88bc614708699eeeb9b96f1364736f6c63430008070033", | |
"opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x22A2 CODESIZE SUB DUP1 PUSH3 0x22A2 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x37 SWAP2 SWAP1 PUSH3 0x33A JUMP JUMPDEST CALLER DUP1 PUSH1 0x0 DUP7 DUP7 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH3 0x120 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x117 SWAP1 PUSH3 0x3FA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x1 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 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH3 0x1A8 JUMPI PUSH3 0x1A7 DUP2 PUSH3 0x1C3 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST JUMPDEST POP POP POP DUP2 PUSH1 0x3 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x4 DUP2 SWAP1 SSTORE POP POP POP POP POP PUSH3 0x53C JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH3 0x235 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x22C SWAP1 PUSH3 0x41C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xED8889F560326EB138920D842192F0EB3DD22B4F139C87A2C57538E05BAE1278 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x306 DUP2 PUSH3 0x4EE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x31D DUP2 PUSH3 0x508 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x334 DUP2 PUSH3 0x522 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH3 0x357 JUMPI PUSH3 0x356 PUSH3 0x497 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0x367 DUP8 DUP3 DUP9 ADD PUSH3 0x2F5 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH3 0x37A DUP8 DUP3 DUP9 ADD PUSH3 0x2F5 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 PUSH3 0x38D DUP8 DUP3 DUP9 ADD PUSH3 0x30C JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH3 0x3A0 DUP8 DUP3 DUP9 ADD PUSH3 0x323 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x3BB PUSH1 0x18 DUP4 PUSH3 0x43E JUMP JUMPDEST SWAP2 POP PUSH3 0x3C8 DUP3 PUSH3 0x49C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x3E2 PUSH1 0x17 DUP4 PUSH3 0x43E JUMP JUMPDEST SWAP2 POP PUSH3 0x3EF DUP3 PUSH3 0x4C5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH3 0x415 DUP2 PUSH3 0x3AC 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 0x437 DUP2 PUSH3 0x3D3 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 0x45C DUP3 PUSH3 0x46D JUMP JUMPDEST 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 DUP1 REVERT JUMPDEST PUSH32 0x43616E6E6F7420736574206F776E657220746F207A65726F0000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x43616E6E6F74207472616E7366657220746F2073656C66000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x4F9 DUP2 PUSH3 0x44F JUMP JUMPDEST DUP2 EQ PUSH3 0x505 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH3 0x513 DUP2 PUSH3 0x463 JUMP JUMPDEST DUP2 EQ PUSH3 0x51F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH3 0x52D DUP2 PUSH3 0x48D JUMP JUMPDEST DUP2 EQ PUSH3 0x539 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH2 0x1D25 PUSH3 0x57D PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x3DD ADD MSTORE PUSH2 0xFD0 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x481 ADD MSTORE DUP2 DUP2 PUSH2 0x6E7 ADD MSTORE PUSH2 0xF94 ADD MSTORE PUSH2 0x1D25 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 0xA9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x983FBAB2 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0x983FBAB2 EQ PUSH2 0x12C JUMPI DUP1 PUSH4 0x98544710 EQ PUSH2 0x148 JUMPI DUP1 PUSH4 0xB1CAD5E3 EQ PUSH2 0x164 JUMPI DUP1 PUSH4 0xDD02D9E5 EQ PUSH2 0x194 JUMPI DUP1 PUSH4 0xDDCA3F43 EQ PUSH2 0x1C4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x1E2 JUMPI PUSH2 0xA9 JUMP JUMPDEST DUP1 PUSH4 0x61728F39 EQ PUSH2 0xAE JUMPI DUP1 PUSH4 0x69FE0E2D EQ PUSH2 0xCC JUMPI DUP1 PUSH4 0x79BA5097 EQ PUSH2 0xE8 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0xF2 JUMPI DUP1 PUSH4 0x94985DDD EQ PUSH2 0x110 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB6 PUSH2 0x1FE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC3 SWAP2 SWAP1 PUSH2 0x170D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xE6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE1 SWAP2 SWAP1 PUSH2 0x13FD JUMP JUMPDEST PUSH2 0x208 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF0 PUSH2 0x21A JUMP JUMPDEST STOP JUMPDEST PUSH2 0xFA PUSH2 0x3B1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x107 SWAP2 SWAP1 PUSH2 0x168B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x12A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x125 SWAP2 SWAP1 PUSH2 0x13BD JUMP JUMPDEST PUSH2 0x3DB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x146 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x141 SWAP2 SWAP1 PUSH2 0x1323 JUMP JUMPDEST PUSH2 0x477 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x162 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15D SWAP2 SWAP1 PUSH2 0x1390 JUMP JUMPDEST PUSH2 0x56F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x179 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x581 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18B SWAP2 SWAP1 PUSH2 0x1796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1A9 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x6D8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1BB SWAP2 SWAP1 PUSH2 0x170D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1CC PUSH2 0x941 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D9 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1FC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x94B JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH1 0x3 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x210 PUSH2 0x95F JUMP JUMPDEST DUP1 PUSH1 0x4 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2A1 SWAP1 PUSH2 0x17B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH1 0x1 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 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x469 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x460 SWAP1 PUSH2 0x1858 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x473 DUP3 DUP3 PUSH2 0x9F1 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x47F PUSH2 0x95F JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4DA SWAP3 SWAP2 SWAP1 PUSH2 0x16A6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x508 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 0x52C SWAP2 SWAP1 PUSH2 0x1363 JUMP JUMPDEST PUSH2 0x56B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x562 SWAP1 PUSH2 0x1838 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x577 PUSH2 0x95F JUMP JUMPDEST DUP1 PUSH1 0x3 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ ISZERO PUSH2 0x606 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5FD SWAP1 PUSH2 0x1818 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2A PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ ISZERO PUSH2 0x689 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x680 SWAP1 PUSH2 0x17F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xAB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6E2 PUSH2 0x95F JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x73E SWAP2 SWAP1 PUSH2 0x168B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x756 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x76A 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 0x78E SWAP2 SWAP1 PUSH2 0x142A JUMP JUMPDEST LT ISZERO PUSH2 0x7CF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7C6 SWAP1 PUSH2 0x1878 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0x851 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x848 SWAP1 PUSH2 0x18B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x85F PUSH1 0x3 SLOAD PUSH1 0x4 SLOAD PUSH2 0xF90 JUMP JUMPDEST SWAP1 POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2A PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH32 0x923DE4FC4AECE24A78A9E4CA3009C571A742F81AC2C004A229224B0FD1883BDD PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x953 PUSH2 0x95F JUMP JUMPDEST PUSH2 0x95C DUP2 PUSH2 0x10EF JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x9EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9E6 SWAP1 PUSH2 0x17D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x14 DUP4 PUSH2 0xA02 SWAP2 SWAP1 PUSH2 0x1A4E JUMP JUMPDEST PUSH2 0xA0C SWAP2 SWAP1 PUSH2 0x192B JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP1 DUP4 PUSH32 0x909DD726737B7FFA4AE9D137E9EDEBE8A74A9C2910A4B60E8112F93AB2170837 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x280 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54617267617279656E0000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4C616E6E69737465720000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537461726B000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x547972656C6C0000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x426172617468656F6E0000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D617274656C6C00000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54756C6C79000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x426F6C746F6E0000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x477265796A6F7900000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x417272796E000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4672657900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D6F726D6F6E7400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5461726C65790000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4461796E65000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x556D626572000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x56616C6572796F6E000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D616E6465726C79000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x436C6567616E6500000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x476C6F7665720000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4B6172737461726B000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE POP SWAP1 POP DUP1 PUSH1 0x1 DUP5 PUSH2 0xF72 SWAP2 SWAP1 PUSH2 0x1981 JUMP JUMPDEST PUSH1 0x14 DUP2 LT PUSH2 0xF83 JUMPI PUSH2 0xF82 PUSH2 0x1ADD JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP5 DUP7 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1004 SWAP3 SWAP2 SWAP1 PUSH2 0x1728 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1031 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16CF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x104B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x105F 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 0x1083 SWAP2 SWAP1 PUSH2 0x1363 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x10A5 DUP5 PUSH1 0x0 ADDRESS PUSH1 0x0 DUP1 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x121E JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x10C6 SWAP2 SWAP1 PUSH2 0x192B JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x10E6 DUP5 DUP3 PUSH2 0x125A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x115E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1155 SWAP1 PUSH2 0x1898 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xED8889F560326EB138920D842192F0EB3DD22B4F139C87A2C57538E05BAE1278 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1237 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1751 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 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x126F SWAP3 SWAP2 SWAP1 PUSH2 0x165F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x129C DUP2 PUSH2 0x1C93 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x12B1 DUP2 PUSH2 0x1CAA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x12C6 DUP2 PUSH2 0x1CC1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x12DB DUP2 PUSH2 0x1CD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x12F0 DUP2 PUSH2 0x1CD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x130C JUMPI PUSH2 0x130B PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x131A DUP5 DUP3 DUP6 ADD PUSH2 0x128D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x133A JUMPI PUSH2 0x1339 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1348 DUP6 DUP3 DUP7 ADD PUSH2 0x128D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1359 DUP6 DUP3 DUP7 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1379 JUMPI PUSH2 0x1378 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1387 DUP5 DUP3 DUP6 ADD PUSH2 0x12A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x13A6 JUMPI PUSH2 0x13A5 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x13B4 DUP5 DUP3 DUP6 ADD PUSH2 0x12B7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x13D4 JUMPI PUSH2 0x13D3 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x13E2 DUP6 DUP3 DUP7 ADD PUSH2 0x12B7 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x13F3 DUP6 DUP3 DUP7 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1413 JUMPI PUSH2 0x1412 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1421 DUP5 DUP3 DUP6 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1440 JUMPI PUSH2 0x143F PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x144E DUP5 DUP3 DUP6 ADD PUSH2 0x12E1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1460 DUP2 PUSH2 0x19B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x146F DUP2 PUSH2 0x19D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1486 PUSH2 0x1481 DUP3 PUSH2 0x19D3 JUMP JUMPDEST PUSH2 0x1A3A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1497 DUP3 PUSH2 0x18F3 JUMP JUMPDEST PUSH2 0x14A1 DUP2 DUP6 PUSH2 0x1909 JUMP JUMPDEST SWAP4 POP PUSH2 0x14B1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1A07 JUMP JUMPDEST PUSH2 0x14BA DUP2 PUSH2 0x1B11 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14D0 DUP3 PUSH2 0x18FE JUMP JUMPDEST PUSH2 0x14DA DUP2 DUP6 PUSH2 0x191A JUMP JUMPDEST SWAP4 POP PUSH2 0x14EA DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1A07 JUMP JUMPDEST PUSH2 0x14F3 DUP2 PUSH2 0x1B11 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150B PUSH1 0x16 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x1516 DUP3 PUSH2 0x1B22 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x152E PUSH1 0x16 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x1539 DUP3 PUSH2 0x1B4B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1551 PUSH1 0x10 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x155C DUP3 PUSH2 0x1B74 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1574 PUSH1 0xF DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x157F DUP3 PUSH2 0x1B9D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1597 PUSH1 0xF DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15A2 DUP3 PUSH2 0x1BC6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15BA PUSH1 0x1F DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15C5 DUP3 PUSH2 0x1BEF JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15DD PUSH1 0x1A DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15E8 DUP3 PUSH2 0x1C18 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1600 PUSH1 0x17 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x160B DUP3 PUSH2 0x1C41 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1623 PUSH1 0xE DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x162E DUP3 PUSH2 0x1C6A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1642 DUP2 PUSH2 0x19FD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1659 PUSH2 0x1654 DUP3 PUSH2 0x19FD JUMP JUMPDEST PUSH2 0x1A44 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x166B DUP3 DUP6 PUSH2 0x1475 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x167B DUP3 DUP5 PUSH2 0x1648 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x16A0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1457 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x16BB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x16C8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x16E4 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x16F1 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x1639 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x1703 DUP2 DUP5 PUSH2 0x148C JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1722 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1466 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x173D PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1466 JUMP JUMPDEST PUSH2 0x174A PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x1766 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x1466 JUMP JUMPDEST PUSH2 0x1773 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x1639 JUMP JUMPDEST PUSH2 0x1780 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x178D PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x17B0 DUP2 DUP5 PUSH2 0x14C5 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 0x17D1 DUP2 PUSH2 0x14FE 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 0x17F1 DUP2 PUSH2 0x1521 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 0x1811 DUP2 PUSH2 0x1544 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 0x1831 DUP2 PUSH2 0x1567 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 0x1851 DUP2 PUSH2 0x158A 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 0x1871 DUP2 PUSH2 0x15AD 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 0x1891 DUP2 PUSH2 0x15D0 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 0x18B1 DUP2 PUSH2 0x15F3 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 0x18D1 DUP2 PUSH2 0x1616 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x18ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP3 SWAP2 POP 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 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 0x1936 DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1941 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1976 JUMPI PUSH2 0x1975 PUSH2 0x1A7F JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x198C DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1997 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x19AA JUMPI PUSH2 0x19A9 PUSH2 0x1A7F JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x19C0 DUP3 PUSH2 0x19DD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1A25 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1A0A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1A34 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST 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 PUSH2 0x1A59 DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1A64 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1A74 JUMPI PUSH2 0x1A73 PUSH2 0x1AAE 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 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 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 0x4D7573742062652070726F706F736564206F776E657200000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x526F6C6C20696E2070726F677265737300000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x44696365206E6F7420726F6C6C65640000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B0000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B20746F2070617920666565000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x43616E6E6F74207472616E7366657220746F2073656C66000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x416C726561647920726F6C6C6564000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x1C9C DUP2 PUSH2 0x19B5 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CB3 DUP2 PUSH2 0x19C7 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CBE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CCA DUP2 PUSH2 0x19D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CD5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CE1 DUP2 PUSH2 0x19FD JUMP JUMPDEST DUP2 EQ PUSH2 0x1CEC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x5C PUSH1 0x3D PUSH19 0x21C2C6C0AB14DB8AA6E0B3DA3ED175EE88BC61 SELFBALANCE ADDMOD PUSH10 0x9EEEB9B96F1364736F6C PUSH4 0x43000807 STOP CALLER ", | |
"sourceMap": "373:5564:6:-:0;;;1469:196;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;424:10;347:8:0;371:1;1573:14:6;1589:4;9386:15:2;9369:32;;;;;;;;;;;;9433:5;9407:32;;;;;;;;;;;;9299:145;;609:1:1;589:22;;:8;:22;;;;581:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;657:8;647:7;;:18;;;;;;;;;;;;;;;;;;699:1;675:26;;:12;:26;;;671:79;;711:32;730:12;711:18;;;:32;;:::i;:::-;671:79;511:243;;271:116:0;1621:7:6::1;1609:9;:19;;;;1646:3;1638:5;:11;;;;1469:196:::0;;;;373:5564;;1598:202:1;1680:10;1674:16;;:2;:16;;;;1666:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;1742:2;1725:14;;:19;;;;;;;;;;;;;;;;;;1792:2;1756:39;;1783:7;;;;;;;;;;;1756:39;;;;;;;;;;;;1598:202;:::o;7:143:7:-;64:5;95:6;89:13;80:22;;111:33;138:5;111:33;:::i;:::-;7:143;;;;:::o;156:::-;213:5;244:6;238:13;229:22;;260:33;287:5;260:33;:::i;:::-;156:143;;;;:::o;305:::-;362:5;393:6;387:13;378:22;;409:33;436:5;409:33;:::i;:::-;305:143;;;;:::o;454:820::-;551:6;559;567;575;624:3;612:9;603:7;599:23;595:33;592:120;;;631:79;;:::i;:::-;592:120;751:1;776:64;832:7;823:6;812:9;808:22;776:64;:::i;:::-;766:74;;722:128;889:2;915:64;971:7;962:6;951:9;947:22;915:64;:::i;:::-;905:74;;860:129;1028:2;1054:64;1110:7;1101:6;1090:9;1086:22;1054:64;:::i;:::-;1044:74;;999:129;1167:2;1193:64;1249:7;1240:6;1229:9;1225:22;1193:64;:::i;:::-;1183:74;;1138:129;454:820;;;;;;;:::o;1280:366::-;1422:3;1443:67;1507:2;1502:3;1443:67;:::i;:::-;1436:74;;1519:93;1608:3;1519:93;:::i;:::-;1637:2;1632:3;1628:12;1621:19;;1280:366;;;:::o;1652:::-;1794:3;1815:67;1879:2;1874:3;1815:67;:::i;:::-;1808:74;;1891:93;1980:3;1891:93;:::i;:::-;2009:2;2004:3;2000:12;1993:19;;1652:366;;;:::o;2024:419::-;2190:4;2228:2;2217:9;2213:18;2205:26;;2277:9;2271:4;2267:20;2263:1;2252:9;2248:17;2241:47;2305:131;2431:4;2305:131;:::i;:::-;2297:139;;2024:419;;;:::o;2449:::-;2615:4;2653:2;2642:9;2638:18;2630:26;;2702:9;2696:4;2692:20;2688:1;2677:9;2673:17;2666:47;2730:131;2856:4;2730:131;:::i;:::-;2722:139;;2449:419;;;:::o;2955:169::-;3039:11;3073:6;3068:3;3061:19;3113:4;3108:3;3104:14;3089:29;;2955:169;;;;:::o;3130:96::-;3167:7;3196:24;3214:5;3196:24;:::i;:::-;3185:35;;3130:96;;;:::o;3232:77::-;3269:7;3298:5;3287:16;;3232:77;;;:::o;3315:126::-;3352:7;3392:42;3385:5;3381:54;3370:65;;3315:126;;;:::o;3447:77::-;3484:7;3513:5;3502:16;;3447:77;;;:::o;3653:117::-;3762:1;3759;3752:12;3776:174;3916:26;3912:1;3904:6;3900:14;3893:50;3776:174;:::o;3956:173::-;4096:25;4092:1;4084:6;4080:14;4073:49;3956:173;:::o;4135:122::-;4208:24;4226:5;4208:24;:::i;:::-;4201:5;4198:35;4188:63;;4247:1;4244;4237:12;4188:63;4135:122;:::o;4263:::-;4336:24;4354:5;4336:24;:::i;:::-;4329:5;4326:35;4316:63;;4375:1;4372;4365:12;4316:63;4263:122;:::o;4391:::-;4464:24;4482:5;4464:24;:::i;:::-;4457:5;4454:35;4444:63;;4503:1;4500;4493:12;4444:63;4391:122;:::o;373:5564:6:-;;;;;;;;;;;;;;;;;;;" | |
}, | |
"deployedBytecode": { | |
"functionDebugData": { | |
"@_transferOwnership_159": { | |
"entryPoint": 4335, | |
"id": 159, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"@_validateOwnership_172": { | |
"entryPoint": 2399, | |
"id": 172, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@acceptOwnership_125": { | |
"entryPoint": 538, | |
"id": 125, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"@fee_712": { | |
"entryPoint": 2369, | |
"id": 712, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@fulfillRandomness_615": { | |
"entryPoint": 2545, | |
"id": 615, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@getHouseName_755": { | |
"entryPoint": 2744, | |
"id": 755, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"@house_648": { | |
"entryPoint": 1409, | |
"id": 648, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"@keyHash_690": { | |
"entryPoint": 510, | |
"id": 690, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@makeRequestId_351": { | |
"entryPoint": 4698, | |
"id": 351, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"@makeVRFInputSeed_332": { | |
"entryPoint": 4638, | |
"id": 332, | |
"parameterSlots": 4, | |
"returnSlots": 1 | |
}, | |
"@owner_135": { | |
"entryPoint": 945, | |
"id": 135, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"@rawFulfillRandomness_301": { | |
"entryPoint": 987, | |
"id": 301, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"@requestRandomness_252": { | |
"entryPoint": 3984, | |
"id": 252, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"@rollDice_583": { | |
"entryPoint": 1752, | |
"id": 583, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"@setFee_703": { | |
"entryPoint": 520, | |
"id": 703, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"@setKeyHash_681": { | |
"entryPoint": 1391, | |
"id": 681, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"@transferOwnership_89": { | |
"entryPoint": 2379, | |
"id": 89, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"@withdrawLINK_668": { | |
"entryPoint": 1143, | |
"id": 668, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_decode_t_address": { | |
"entryPoint": 4749, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_bool_fromMemory": { | |
"entryPoint": 4770, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_bytes32": { | |
"entryPoint": 4791, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256": { | |
"entryPoint": 4812, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_t_uint256_fromMemory": { | |
"entryPoint": 4833, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_address": { | |
"entryPoint": 4854, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_addresst_uint256": { | |
"entryPoint": 4899, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_decode_tuple_t_bool_fromMemory": { | |
"entryPoint": 4963, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_bytes32": { | |
"entryPoint": 5008, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_bytes32t_uint256": { | |
"entryPoint": 5053, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 2 | |
}, | |
"abi_decode_tuple_t_uint256": { | |
"entryPoint": 5117, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_decode_tuple_t_uint256_fromMemory": { | |
"entryPoint": 5162, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_address_to_t_address_fromStack": { | |
"entryPoint": 5207, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_bytes32_to_t_bytes32_fromStack": { | |
"entryPoint": 5222, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack": { | |
"entryPoint": 5237, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack": { | |
"entryPoint": 5260, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5317, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5374, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5409, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5444, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5479, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5514, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5549, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5584, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5619, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde_to_t_string_memory_ptr_fromStack": { | |
"entryPoint": 5654, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_t_uint256_to_t_uint256_fromStack": { | |
"entryPoint": 5689, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack": { | |
"entryPoint": 5704, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 0 | |
}, | |
"abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed": { | |
"entryPoint": 5727, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { | |
"entryPoint": 5771, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed": { | |
"entryPoint": 5798, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed": { | |
"entryPoint": 5839, | |
"id": null, | |
"parameterSlots": 4, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": { | |
"entryPoint": 5901, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed": { | |
"entryPoint": 5928, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed": { | |
"entryPoint": 5969, | |
"id": null, | |
"parameterSlots": 5, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6038, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6072, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6104, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6136, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6168, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6200, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6232, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6264, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6296, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde__to_t_string_memory_ptr__fromStack_reversed": { | |
"entryPoint": 6328, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { | |
"entryPoint": 6360, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"allocate_unbounded": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 1 | |
}, | |
"array_length_t_bytes_memory_ptr": { | |
"entryPoint": 6387, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_length_t_string_memory_ptr": { | |
"entryPoint": 6398, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack": { | |
"entryPoint": 6409, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { | |
"entryPoint": 6426, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"checked_add_t_uint256": { | |
"entryPoint": 6443, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"checked_sub_t_uint256": { | |
"entryPoint": 6529, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_address": { | |
"entryPoint": 6581, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_bool": { | |
"entryPoint": 6599, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_bytes32": { | |
"entryPoint": 6611, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint160": { | |
"entryPoint": 6621, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"cleanup_t_uint256": { | |
"entryPoint": 6653, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"copy_memory_to_memory": { | |
"entryPoint": 6663, | |
"id": null, | |
"parameterSlots": 3, | |
"returnSlots": 0 | |
}, | |
"leftAlign_t_bytes32": { | |
"entryPoint": 6714, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"leftAlign_t_uint256": { | |
"entryPoint": 6724, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"mod_t_uint256": { | |
"entryPoint": 6734, | |
"id": null, | |
"parameterSlots": 2, | |
"returnSlots": 1 | |
}, | |
"panic_error_0x11": { | |
"entryPoint": 6783, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x12": { | |
"entryPoint": 6830, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"panic_error_0x32": { | |
"entryPoint": 6877, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { | |
"entryPoint": null, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { | |
"entryPoint": 6924, | |
"id": null, | |
"parameterSlots": 0, | |
"returnSlots": 0 | |
}, | |
"round_up_to_mul_of_32": { | |
"entryPoint": 6929, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 1 | |
}, | |
"store_literal_in_memory_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c": { | |
"entryPoint": 6946, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3": { | |
"entryPoint": 6987, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228": { | |
"entryPoint": 7028, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9": { | |
"entryPoint": 7069, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d": { | |
"entryPoint": 7110, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445": { | |
"entryPoint": 7151, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3": { | |
"entryPoint": 7192, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2": { | |
"entryPoint": 7233, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"store_literal_in_memory_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde": { | |
"entryPoint": 7274, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_address": { | |
"entryPoint": 7315, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_bool": { | |
"entryPoint": 7338, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_bytes32": { | |
"entryPoint": 7361, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
}, | |
"validator_revert_t_uint256": { | |
"entryPoint": 7384, | |
"id": null, | |
"parameterSlots": 1, | |
"returnSlots": 0 | |
} | |
}, | |
"generatedSources": [ | |
{ | |
"ast": { | |
"nodeType": "YulBlock", | |
"src": "0:20501:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "59:87:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "69:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "91:6:7" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "78:12:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "78:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "69:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "134:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "107:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "107:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "107:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "37:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "45:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "53:5:7", | |
"type": "" | |
} | |
], | |
"src": "7:139:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "212:77:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "222:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "237:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "231:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "231:13:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "222:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "277:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_bool", | |
"nodeType": "YulIdentifier", | |
"src": "253:23:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "253:30:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "253:30:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_bool_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "190:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "198:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "206:5:7", | |
"type": "" | |
} | |
], | |
"src": "152:137:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "347:87:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "357:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "379:6:7" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "366:12:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "366:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "357:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "422:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "395:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "395:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "395:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "325:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "333:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "341:5:7", | |
"type": "" | |
} | |
], | |
"src": "295:139:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "492:87:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "502:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "524:6:7" | |
} | |
], | |
"functionName": { | |
"name": "calldataload", | |
"nodeType": "YulIdentifier", | |
"src": "511:12:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "511:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "502:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "567:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "540:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "540:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "540:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "470:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "478:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "486:5:7", | |
"type": "" | |
} | |
], | |
"src": "440:139:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "648:80:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "658:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "673:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "667:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "667:13:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "658:5:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "716:5:7" | |
} | |
], | |
"functionName": { | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "689:26:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "689:33:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "689:33:7" | |
} | |
] | |
}, | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "626:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "634:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "642:5:7", | |
"type": "" | |
} | |
], | |
"src": "585:143:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "800:263:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "846:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "848:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "848:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "848:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "821:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "830:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "817:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "817:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "842:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "813:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "813:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "810:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "939:117:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "954:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "968:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "958:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "983:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1018:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1029:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1014:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1014:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1038:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "993:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "993:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "983:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "770:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "781:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "793:6:7", | |
"type": "" | |
} | |
], | |
"src": "734:329:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1152:391:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1198:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1200:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1200:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1200:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1173:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1182:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1169:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1169:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1194:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1165:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1165:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "1162:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1291:117:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1306:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1320:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1310:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1335:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1370:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1381:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1366:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1366:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1390:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "1345:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1345:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1335:6:7" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1418:118:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1433:16:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1447:2:7", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1437:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1463:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1498:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1509:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1494:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1494:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1518:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "1473:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1473:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "1463:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_addresst_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1114:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1125:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1137:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "1145:6:7", | |
"type": "" | |
} | |
], | |
"src": "1069:474:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1623:271:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1669:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "1671:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1671:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "1671:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1644:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1653:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1640:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1640:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1665:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1636:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1636:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "1633:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "1762:125:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "1777:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "1791:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "1781:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "1806:71:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1849:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "1860:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "1845:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1845:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1869:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bool_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "1816:28:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1816:61:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "1806:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_bool_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1593:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1604:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1616:6:7", | |
"type": "" | |
} | |
], | |
"src": "1549:345:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "1966:263:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2012:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "2014:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2014:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2014:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "1987:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "1996:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "1983:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1983:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2008:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "1979:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "1979:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "1976:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "2105:117:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2120:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2134:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2124:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2149:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2184:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2195:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2180:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2180:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2204:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "2159:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2159:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2149:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "1936:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "1947:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "1959:6:7", | |
"type": "" | |
} | |
], | |
"src": "1900:329:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2318:391:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2364:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "2366:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2366:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2366:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2339:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2348:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "2335:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2335:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2360:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "2331:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2331:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "2328:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "2457:117:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2472:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2486:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2476:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2501:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2536:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2547:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2532:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2532:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2556:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "2511:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2511:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2501:6:7" | |
} | |
] | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "2584:118:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2599:16:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2613:2:7", | |
"type": "", | |
"value": "32" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2603:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2629:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2664:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "2675:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2660:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2660:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2684:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2639:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2639:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "2629:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_bytes32t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2280:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "2291:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "2303:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "2311:6:7", | |
"type": "" | |
} | |
], | |
"src": "2235:474:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2781:263:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "2827:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "2829:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2829:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "2829:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "2802:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2811:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "2798:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2798:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2823:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "2794:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2794:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "2791:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "2920:117:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "2935:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "2949:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "2939:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "2964:63:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "2999:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "3010:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "2995:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2995:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "3019:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "2974:20:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "2974:53:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "2964:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "2751:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "2762:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "2774:6:7", | |
"type": "" | |
} | |
], | |
"src": "2715:329:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3127:274:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3173:83:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulIdentifier", | |
"src": "3175:77:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3175:79:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3175:79:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "3148:7:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3157:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "3144:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3144:23:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3169:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "slt", | |
"nodeType": "YulIdentifier", | |
"src": "3140:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3140:32:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "3137:119:7" | |
}, | |
{ | |
"nodeType": "YulBlock", | |
"src": "3266:128:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3281:15:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "3295:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "offset", | |
"nodeType": "YulTypedName", | |
"src": "3285:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3310:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "3356:9:7" | |
}, | |
{ | |
"name": "offset", | |
"nodeType": "YulIdentifier", | |
"src": "3367:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "3352:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3352:22:7" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulIdentifier", | |
"src": "3376:7:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_decode_t_uint256_fromMemory", | |
"nodeType": "YulIdentifier", | |
"src": "3320:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3320:64:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "3310:6:7" | |
} | |
] | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_decode_tuple_t_uint256_fromMemory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "3097:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "dataEnd", | |
"nodeType": "YulTypedName", | |
"src": "3108:7:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "3120:6:7", | |
"type": "" | |
} | |
], | |
"src": "3050:351:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3472:53:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3489:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3512:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "3494:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3494:24:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3482:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3482:37:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3482:37:7" | |
} | |
] | |
}, | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3460:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3467:3:7", | |
"type": "" | |
} | |
], | |
"src": "3407:118:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3596:53:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3613:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3636:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3618:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3618:24:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3606:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3606:37:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3606:37:7" | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3584:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3591:3:7", | |
"type": "" | |
} | |
], | |
"src": "3531:118:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3738:74:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3755:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3798:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3780:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3780:24:7" | |
} | |
], | |
"functionName": { | |
"name": "leftAlign_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "3760:19:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3760:45:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "3748:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3748:58:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "3748:58:7" | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3726:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3733:3:7", | |
"type": "" | |
} | |
], | |
"src": "3655:157:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "3908:270:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "3918:52:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "3964:5:7" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_bytes_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "3932:31:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3932:38:7" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "3922:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "3979:77:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4044:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4049:6:7" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "3986:57:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "3986:70:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "3979:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4091:5:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4098:4:7", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4087:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4087:16:7" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4105:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4110:6:7" | |
} | |
], | |
"functionName": { | |
"name": "copy_memory_to_memory", | |
"nodeType": "YulIdentifier", | |
"src": "4065:21:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4065:52:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4065:52:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4126:46:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4137:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4164:6:7" | |
} | |
], | |
"functionName": { | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulIdentifier", | |
"src": "4142:21:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4142:29:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4133:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4133:39:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4126:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "3889:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "3896:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "3904:3:7", | |
"type": "" | |
} | |
], | |
"src": "3818:360:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4276:272:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "4286:53:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4333:5:7" | |
} | |
], | |
"functionName": { | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulIdentifier", | |
"src": "4300:32:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4300:39:7" | |
}, | |
"variables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "4290:6:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4348:78:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4414:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4419:6:7" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4355:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4355:71:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4348:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "4461:5:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4468:4:7", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4457:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4457:16:7" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4475:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4480:6:7" | |
} | |
], | |
"functionName": { | |
"name": "copy_memory_to_memory", | |
"nodeType": "YulIdentifier", | |
"src": "4435:21:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4435:52:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4435:52:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4496:46:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4507:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "4534:6:7" | |
} | |
], | |
"functionName": { | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulIdentifier", | |
"src": "4512:21:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4512:29:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4503:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4503:39:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4496:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "4257:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4264:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4272:3:7", | |
"type": "" | |
} | |
], | |
"src": "4184:364:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "4700:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4710:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4776:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4781:2:7", | |
"type": "", | |
"value": "22" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "4717:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4717:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4710:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4882:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c", | |
"nodeType": "YulIdentifier", | |
"src": "4793:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4793:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "4793:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "4895:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "4906:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "4911:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "4902:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "4902:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "4895:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "4688:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "4696:3:7", | |
"type": "" | |
} | |
], | |
"src": "4554:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5072:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5082:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5148:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5153:2:7", | |
"type": "", | |
"value": "22" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5089:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5089:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5082:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5254:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3", | |
"nodeType": "YulIdentifier", | |
"src": "5165:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5165:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5165:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5267:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5278:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5283:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5274:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5274:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "5267:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "5060:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "5068:3:7", | |
"type": "" | |
} | |
], | |
"src": "4926:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5444:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5454:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5520:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5525:2:7", | |
"type": "", | |
"value": "16" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5461:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5461:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5454:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5626:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228", | |
"nodeType": "YulIdentifier", | |
"src": "5537:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5537:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5537:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5639:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5650:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5655:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "5646:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5646:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "5639:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "5432:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "5440:3:7", | |
"type": "" | |
} | |
], | |
"src": "5298:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "5816:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "5826:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5892:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "5897:2:7", | |
"type": "", | |
"value": "15" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "5833:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5833:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5826:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "5998:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9", | |
"nodeType": "YulIdentifier", | |
"src": "5909:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "5909:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "5909:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6011:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6022:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6027:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6018:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6018:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "6011:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "5804:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "5812:3:7", | |
"type": "" | |
} | |
], | |
"src": "5670:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6188:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6198:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6264:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6269:2:7", | |
"type": "", | |
"value": "15" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6205:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6205:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6198:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6370:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d", | |
"nodeType": "YulIdentifier", | |
"src": "6281:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6281:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6281:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6383:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6394:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6399:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6390:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6390:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "6383:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "6176:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "6184:3:7", | |
"type": "" | |
} | |
], | |
"src": "6042:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6560:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6570:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6636:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6641:2:7", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6577:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6577:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6570:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6742:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445", | |
"nodeType": "YulIdentifier", | |
"src": "6653:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6653:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "6653:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6755:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6766:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "6771:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "6762:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6762:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "6755:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "6548:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "6556:3:7", | |
"type": "" | |
} | |
], | |
"src": "6414:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "6932:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "6942:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7008:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7013:2:7", | |
"type": "", | |
"value": "26" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "6949:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "6949:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "6942:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7114:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3", | |
"nodeType": "YulIdentifier", | |
"src": "7025:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7025:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7025:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7127:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7138:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7143:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7134:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7134:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "7127:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "6920:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "6928:3:7", | |
"type": "" | |
} | |
], | |
"src": "6786:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7304:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7314:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7380:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7385:2:7", | |
"type": "", | |
"value": "23" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7321:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7321:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7314:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7486:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2", | |
"nodeType": "YulIdentifier", | |
"src": "7397:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7397:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7397:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7499:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7510:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7515:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7506:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7506:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "7499:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "7292:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "7300:3:7", | |
"type": "" | |
} | |
], | |
"src": "7158:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7676:220:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7686:74:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7752:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7757:2:7", | |
"type": "", | |
"value": "14" | |
} | |
], | |
"functionName": { | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "7693:58:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7693:67:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7686:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7858:3:7" | |
} | |
], | |
"functionName": { | |
"name": "store_literal_in_memory_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde", | |
"nodeType": "YulIdentifier", | |
"src": "7769:88:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7769:93:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7769:93:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "7871:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7882:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "7887:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "7878:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7878:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "7871:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "7664:3:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "7672:3:7", | |
"type": "" | |
} | |
], | |
"src": "7530:366:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "7967:53:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "7984:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "8007:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "7989:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7989:24:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "7977:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "7977:37:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "7977:37:7" | |
} | |
] | |
}, | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "7955:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "7962:3:7", | |
"type": "" | |
} | |
], | |
"src": "7902:118:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8109:74:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8126:3:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "8169:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "8151:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8151:24:7" | |
} | |
], | |
"functionName": { | |
"name": "leftAlign_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "8131:19:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8131:45:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "8119:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8119:58:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8119:58:7" | |
} | |
] | |
}, | |
"name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "8097:5:7", | |
"type": "" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "8104:3:7", | |
"type": "" | |
} | |
], | |
"src": "8026:157:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8333:253:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "8406:6:7" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8415:3:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8344:61:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8344:75:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8344:75:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8428:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8439:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8444:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8435:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8435:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8428:3:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "8519:6:7" | |
}, | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8528:3:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8457:61:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8457:75:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8457:75:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8541:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8552:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8557:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8548:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8548:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8541:3:7" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8570:10:7", | |
"value": { | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "8577:3:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "end", | |
"nodeType": "YulIdentifier", | |
"src": "8570:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "8304:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "8310:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "8318:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "end", | |
"nodeType": "YulTypedName", | |
"src": "8329:3:7", | |
"type": "" | |
} | |
], | |
"src": "8189:397:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8690:124:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8700:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8712:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8723:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8708:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8708:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8700:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "8780:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8793:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8804:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8789:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8789:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8736:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8736:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8736:71:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "8662:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "8674:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "8685:4:7", | |
"type": "" | |
} | |
], | |
"src": "8592:222:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "8946:206:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "8956:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "8968:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "8979:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "8964:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8964:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "8956:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "9036:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9049:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9060:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9045:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9045:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "8992:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "8992:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "8992:71:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "9117:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9130:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9141:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9126:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9126:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9073:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9073:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9073:72:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "8910:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "8922:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "8930:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "8941:4:7", | |
"type": "" | |
} | |
], | |
"src": "8820:332:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9330:357:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9340:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9352:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9363:2:7", | |
"type": "", | |
"value": "96" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9348:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9348:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9340:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "9420:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9433:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9444:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9429:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9429:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9376:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9376:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9376:71:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "9501:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9514:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9525:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9510:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9510:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9457:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9457:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9457:72:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9550:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9561:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9546:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9546:18:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9570:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9576:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "9566:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9566:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "9539:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9539:48:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9539:48:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9596:84:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "9666:6:7" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9675:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9604:61:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9604:76:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9596:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "9286:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "9298:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "9306:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "9314:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "9325:4:7", | |
"type": "" | |
} | |
], | |
"src": "9158:529:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "9791:124:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "9801:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9813:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9824:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9809:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9809:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "9801:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "9881:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "9894:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "9905:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "9890:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9890:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "9837:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "9837:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "9837:71:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "9763:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "9775:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "9786:4:7", | |
"type": "" | |
} | |
], | |
"src": "9693:222:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10047:206:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10057:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10069:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10080:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10065:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10065:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "10057:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "10137:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10150:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10161:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10146:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10146:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10093:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10093:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10093:71:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "10218:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10231:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10242:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10227:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10227:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10174:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10174:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10174:72:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "10011:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "10023:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "10031:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "10042:4:7", | |
"type": "" | |
} | |
], | |
"src": "9921:332:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10441:371:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10451:27:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10463:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10474:3:7", | |
"type": "", | |
"value": "128" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10459:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10459:19:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "10451:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "10532:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10545:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10556:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10541:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10541:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10488:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10488:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10488:71:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value1", | |
"nodeType": "YulIdentifier", | |
"src": "10613:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10626:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10637:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10622:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10622:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10569:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10569:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10569:72:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value2", | |
"nodeType": "YulIdentifier", | |
"src": "10695:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10708:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10719:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10704:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10704:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_address_to_t_address_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10651:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10651:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10651:72:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value3", | |
"nodeType": "YulIdentifier", | |
"src": "10777:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10790:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10801:2:7", | |
"type": "", | |
"value": "96" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10786:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10786:18:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "10733:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10733:72:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10733:72:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "10389:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value3", | |
"nodeType": "YulTypedName", | |
"src": "10401:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value2", | |
"nodeType": "YulTypedName", | |
"src": "10409:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value1", | |
"nodeType": "YulTypedName", | |
"src": "10417:6:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "10425:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "10436:4:7", | |
"type": "" | |
} | |
], | |
"src": "10259:553:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "10936:195:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "10946:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10958:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "10969:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10954:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10954:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "10946:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "10993:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11004:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "10989:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10989:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11012:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11018:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "11008:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11008:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "10982:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "10982:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "10982:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11038:86:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "11110:6:7" | |
}, | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11119:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "11046:63:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11046:78:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11038:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "10908:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "10920:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "10931:4:7", | |
"type": "" | |
} | |
], | |
"src": "10818:313:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11308:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11318:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11330:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11341:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11326:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11326:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11318:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11365:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11376:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11361:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11361:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11384:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11390:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "11380:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11380:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11354:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11354:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11354:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11410:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11544:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "11418:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11418:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11410:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "11288:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "11303:4:7", | |
"type": "" | |
} | |
], | |
"src": "11137:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "11733:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11743:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11755:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11766:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11751:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11751:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11743:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11790:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "11801:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "11786:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11786:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11809:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "11815:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "11805:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11805:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "11779:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11779:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "11779:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "11835:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11969:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "11843:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "11843:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "11835:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "11713:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "11728:4:7", | |
"type": "" | |
} | |
], | |
"src": "11562:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12158:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "12168:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12180:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12191:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12176:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12176:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12168:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12215:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12226:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12211:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12211:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12234:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12240:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "12230:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12230:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12204:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12204:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12204:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "12260:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12394:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "12268:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12268:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12260:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "12138:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "12153:4:7", | |
"type": "" | |
} | |
], | |
"src": "11987:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "12583:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "12593:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12605:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12616:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12601:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12601:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12593:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12640:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "12651:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "12636:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12636:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12659:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "12665:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "12655:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12655:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "12629:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12629:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "12629:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "12685:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12819:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "12693:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "12693:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "12685:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "12563:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "12578:4:7", | |
"type": "" | |
} | |
], | |
"src": "12412:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13008:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13018:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13030:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13041:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13026:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13026:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13018:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13065:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13076:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13061:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13061:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13084:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13090:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "13080:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13080:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "13054:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13054:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13054:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13110:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13244:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "13118:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13118:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13110:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "12988:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "13003:4:7", | |
"type": "" | |
} | |
], | |
"src": "12837:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13433:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13443:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13455:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13466:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13451:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13451:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13443:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13490:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13501:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13486:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13486:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13509:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13515:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "13505:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13505:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "13479:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13479:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13479:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13535:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13669:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "13543:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13543:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13535:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "13413:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "13428:4:7", | |
"type": "" | |
} | |
], | |
"src": "13262:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "13858:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13868:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13880:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13891:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13876:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13876:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13868:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13915:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "13926:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "13911:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13911:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13934:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "13940:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "13930:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13930:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "13904:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13904:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "13904:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "13960:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14094:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "13968:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "13968:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "13960:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "13838:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "13853:4:7", | |
"type": "" | |
} | |
], | |
"src": "13687:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "14283:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "14293:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14305:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "14316:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "14301:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14301:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14293:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14340:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "14351:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "14336:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14336:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14359:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14365:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "14355:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14355:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "14329:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14329:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "14329:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "14385:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14519:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "14393:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14393:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14385:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "14263:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "14278:4:7", | |
"type": "" | |
} | |
], | |
"src": "14112:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "14708:248:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "14718:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14730:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "14741:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "14726:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14726:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14718:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14765:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "14776:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "14761:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14761:17:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14784:4:7" | |
}, | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "14790:9:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "14780:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14780:20:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "14754:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14754:47:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "14754:47:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "14810:139:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14944:4:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde_to_t_string_memory_ptr_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "14818:124:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "14818:131:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "14810:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde__to_t_string_memory_ptr__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "14688:9:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "14703:4:7", | |
"type": "" | |
} | |
], | |
"src": "14537:419:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15060:124:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15070:26:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "15082:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "15093:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "15078:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15078:18:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulIdentifier", | |
"src": "15070:4:7" | |
} | |
] | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "value0", | |
"nodeType": "YulIdentifier", | |
"src": "15150:6:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulIdentifier", | |
"src": "15163:9:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "15174:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "15159:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15159:17:7" | |
} | |
], | |
"functionName": { | |
"name": "abi_encode_t_uint256_to_t_uint256_fromStack", | |
"nodeType": "YulIdentifier", | |
"src": "15106:43:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15106:71:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "15106:71:7" | |
} | |
] | |
}, | |
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "headStart", | |
"nodeType": "YulTypedName", | |
"src": "15032:9:7", | |
"type": "" | |
}, | |
{ | |
"name": "value0", | |
"nodeType": "YulTypedName", | |
"src": "15044:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "tail", | |
"nodeType": "YulTypedName", | |
"src": "15055:4:7", | |
"type": "" | |
} | |
], | |
"src": "14962:222:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15230:35:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15240:19:7", | |
"value": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "15256:2:7", | |
"type": "", | |
"value": "64" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "15250:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15250:9:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "15240:6:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "allocate_unbounded", | |
"nodeType": "YulFunctionDefinition", | |
"returnVariables": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "15223:6:7", | |
"type": "" | |
} | |
], | |
"src": "15190:75:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15329:40:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15340:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "15356:5:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "15350:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15350:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "15340:6:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_bytes_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "15312:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "15322:6:7", | |
"type": "" | |
} | |
], | |
"src": "15271:98:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15434:40:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15445:22:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "15461:5:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "15455:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15455:12:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "15445:6:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_length_t_string_memory_ptr", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "15417:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "15427:6:7", | |
"type": "" | |
} | |
], | |
"src": "15375:99:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15575:73:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "15592:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "15597:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "15585:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15585:19:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "15585:19:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15613:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "15632:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "15637:4:7", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "15628:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15628:14:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "15613:11:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "15547:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "15552:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "15563:11:7", | |
"type": "" | |
} | |
], | |
"src": "15480:168:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15750:73:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "15767:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "15772:6:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "15760:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15760:19:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "15760:19:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15788:29:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulIdentifier", | |
"src": "15807:3:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "15812:4:7", | |
"type": "", | |
"value": "0x20" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "15803:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15803:14:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulIdentifier", | |
"src": "15788:11:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "pos", | |
"nodeType": "YulTypedName", | |
"src": "15722:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "15727:6:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "updated_pos", | |
"nodeType": "YulTypedName", | |
"src": "15738:11:7", | |
"type": "" | |
} | |
], | |
"src": "15654:169:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "15873:261:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15883:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "15906:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "15888:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15888:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "15883:1:7" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "15917:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "15940:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "15922:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15922:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "15917:1:7" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16080:22:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x11", | |
"nodeType": "YulIdentifier", | |
"src": "16082:16:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16082:18:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "16082:18:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16001:1:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "16008:66:7", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16076:1:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "16004:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16004:74:7" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "15998:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "15998:81:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "15995:107:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16112:16:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16123:1:7" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16126:1:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "16119:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16119:9:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "sum", | |
"nodeType": "YulIdentifier", | |
"src": "16112:3:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "checked_add_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "x", | |
"nodeType": "YulTypedName", | |
"src": "15860:1:7", | |
"type": "" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulTypedName", | |
"src": "15863:1:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "sum", | |
"nodeType": "YulTypedName", | |
"src": "15869:3:7", | |
"type": "" | |
} | |
], | |
"src": "15829:305:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16185:146:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16195:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16218:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "16200:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16200:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16195:1:7" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16229:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16252:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "16234:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16234:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16229:1:7" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16276:22:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x11", | |
"nodeType": "YulIdentifier", | |
"src": "16278:16:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16278:18:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "16278:18:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16270:1:7" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16273:1:7" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "16267:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16267:8:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "16264:34:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16308:17:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "16320:1:7" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "16323:1:7" | |
} | |
], | |
"functionName": { | |
"name": "sub", | |
"nodeType": "YulIdentifier", | |
"src": "16316:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16316:9:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "diff", | |
"nodeType": "YulIdentifier", | |
"src": "16308:4:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "checked_sub_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "x", | |
"nodeType": "YulTypedName", | |
"src": "16171:1:7", | |
"type": "" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulTypedName", | |
"src": "16174:1:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "diff", | |
"nodeType": "YulTypedName", | |
"src": "16180:4:7", | |
"type": "" | |
} | |
], | |
"src": "16140:191:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16382:51:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16392:35:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "16421:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulIdentifier", | |
"src": "16403:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16403:24:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "16392:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "16364:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "16374:7:7", | |
"type": "" | |
} | |
], | |
"src": "16337:96:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16481:48:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16491:32:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "16516:5:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "16509:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16509:13:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "16502:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16502:21:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "16491:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_bool", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "16463:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "16473:7:7", | |
"type": "" | |
} | |
], | |
"src": "16439:90:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16580:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16590:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "16601:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "16590:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "16562:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "16572:7:7", | |
"type": "" | |
} | |
], | |
"src": "16535:77:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16663:81:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16673:65:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "16688:5:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "16695:42:7", | |
"type": "", | |
"value": "0xffffffffffffffffffffffffffffffffffffffff" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "16684:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16684:54:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "16673:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint160", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "16645:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "16655:7:7", | |
"type": "" | |
} | |
], | |
"src": "16618:126:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16795:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16805:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "16816:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulIdentifier", | |
"src": "16805:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "16777:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "cleaned", | |
"nodeType": "YulTypedName", | |
"src": "16787:7:7", | |
"type": "" | |
} | |
], | |
"src": "16750:77:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16882:258:7", | |
"statements": [ | |
{ | |
"nodeType": "YulVariableDeclaration", | |
"src": "16892:10:7", | |
"value": { | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "16901:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
"variables": [ | |
{ | |
"name": "i", | |
"nodeType": "YulTypedName", | |
"src": "16896:1:7", | |
"type": "" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "16961:63:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "16986:3:7" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "16991:1:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "16982:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16982:11:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "src", | |
"nodeType": "YulIdentifier", | |
"src": "17005:3:7" | |
}, | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "17010:1:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "17001:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17001:11:7" | |
} | |
], | |
"functionName": { | |
"name": "mload", | |
"nodeType": "YulIdentifier", | |
"src": "16995:5:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16995:18:7" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "16975:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16975:39:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "16975:39:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "16922:1:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "16925:6:7" | |
} | |
], | |
"functionName": { | |
"name": "lt", | |
"nodeType": "YulIdentifier", | |
"src": "16919:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16919:13:7" | |
}, | |
"nodeType": "YulForLoop", | |
"post": { | |
"nodeType": "YulBlock", | |
"src": "16933:19:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "16935:15:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "16944:1:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "16947:2:7", | |
"type": "", | |
"value": "32" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "16940:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "16940:10:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "16935:1:7" | |
} | |
] | |
} | |
] | |
}, | |
"pre": { | |
"nodeType": "YulBlock", | |
"src": "16915:3:7", | |
"statements": [] | |
}, | |
"src": "16911:113:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17058:76:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "dst", | |
"nodeType": "YulIdentifier", | |
"src": "17108:3:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "17113:6:7" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "17104:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17104:16:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17122:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17097:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17097:27:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17097:27:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "i", | |
"nodeType": "YulIdentifier", | |
"src": "17039:1:7" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulIdentifier", | |
"src": "17042:6:7" | |
} | |
], | |
"functionName": { | |
"name": "gt", | |
"nodeType": "YulIdentifier", | |
"src": "17036:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17036:13:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "17033:101:7" | |
} | |
] | |
}, | |
"name": "copy_memory_to_memory", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "src", | |
"nodeType": "YulTypedName", | |
"src": "16864:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "dst", | |
"nodeType": "YulTypedName", | |
"src": "16869:3:7", | |
"type": "" | |
}, | |
{ | |
"name": "length", | |
"nodeType": "YulTypedName", | |
"src": "16874:6:7", | |
"type": "" | |
} | |
], | |
"src": "16833:307:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17193:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "17203:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "17214:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulIdentifier", | |
"src": "17203:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "leftAlign_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "17175:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulTypedName", | |
"src": "17185:7:7", | |
"type": "" | |
} | |
], | |
"src": "17146:79:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17278:32:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "17288:16:7", | |
"value": { | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "17299:5:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulIdentifier", | |
"src": "17288:7:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "leftAlign_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "17260:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "aligned", | |
"nodeType": "YulTypedName", | |
"src": "17270:7:7", | |
"type": "" | |
} | |
], | |
"src": "17231:79:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17350:142:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "17360:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "17383:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "17365:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17365:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "17360:1:7" | |
} | |
] | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "17394:25:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "17417:1:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "17399:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17399:20:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "17394:1:7" | |
} | |
] | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17441:22:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [], | |
"functionName": { | |
"name": "panic_error_0x12", | |
"nodeType": "YulIdentifier", | |
"src": "17443:16:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17443:18:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17443:18:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "17438:1:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "17431:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17431:9:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "17428:35:7" | |
}, | |
{ | |
"nodeType": "YulAssignment", | |
"src": "17472:14:7", | |
"value": { | |
"arguments": [ | |
{ | |
"name": "x", | |
"nodeType": "YulIdentifier", | |
"src": "17481:1:7" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulIdentifier", | |
"src": "17484:1:7" | |
} | |
], | |
"functionName": { | |
"name": "mod", | |
"nodeType": "YulIdentifier", | |
"src": "17477:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17477:9:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "r", | |
"nodeType": "YulIdentifier", | |
"src": "17472:1:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "mod_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "x", | |
"nodeType": "YulTypedName", | |
"src": "17339:1:7", | |
"type": "" | |
}, | |
{ | |
"name": "y", | |
"nodeType": "YulTypedName", | |
"src": "17342:1:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "r", | |
"nodeType": "YulTypedName", | |
"src": "17348:1:7", | |
"type": "" | |
} | |
], | |
"src": "17316:176:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17526:152:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17543:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17546:77:7", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17536:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17536:88:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17536:88:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17640:1:7", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17643:4:7", | |
"type": "", | |
"value": "0x11" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17633:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17633:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17633:15:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17664:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17667:4:7", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "17657:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17657:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17657:15:7" | |
} | |
] | |
}, | |
"name": "panic_error_0x11", | |
"nodeType": "YulFunctionDefinition", | |
"src": "17498:180:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17712:152:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17729:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17732:77:7", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17722:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17722:88:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17722:88:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17826:1:7", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17829:4:7", | |
"type": "", | |
"value": "0x12" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17819:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17819:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17819:15:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17850:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17853:4:7", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "17843:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17843:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17843:15:7" | |
} | |
] | |
}, | |
"name": "panic_error_0x12", | |
"nodeType": "YulFunctionDefinition", | |
"src": "17684:180:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "17898:152:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17915:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "17918:77:7", | |
"type": "", | |
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "17908:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "17908:88:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "17908:88:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18012:1:7", | |
"type": "", | |
"value": "4" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18015:4:7", | |
"type": "", | |
"value": "0x32" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "18005:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18005:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18005:15:7" | |
}, | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18036:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18039:4:7", | |
"type": "", | |
"value": "0x24" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "18029:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18029:15:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18029:15:7" | |
} | |
] | |
}, | |
"name": "panic_error_0x32", | |
"nodeType": "YulFunctionDefinition", | |
"src": "17870:180:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18145:28:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18162:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18165:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "18155:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18155:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18155:12:7" | |
} | |
] | |
}, | |
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", | |
"nodeType": "YulFunctionDefinition", | |
"src": "18056:117:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18268:28:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18285:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18288:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "18278:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18278:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18278:12:7" | |
} | |
] | |
}, | |
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", | |
"nodeType": "YulFunctionDefinition", | |
"src": "18179:117:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18350:54:7", | |
"statements": [ | |
{ | |
"nodeType": "YulAssignment", | |
"src": "18360:38:7", | |
"value": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "18378:5:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18385:2:7", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "18374:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18374:14:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18394:2:7", | |
"type": "", | |
"value": "31" | |
} | |
], | |
"functionName": { | |
"name": "not", | |
"nodeType": "YulIdentifier", | |
"src": "18390:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18390:7:7" | |
} | |
], | |
"functionName": { | |
"name": "and", | |
"nodeType": "YulIdentifier", | |
"src": "18370:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18370:28:7" | |
}, | |
"variableNames": [ | |
{ | |
"name": "result", | |
"nodeType": "YulIdentifier", | |
"src": "18360:6:7" | |
} | |
] | |
} | |
] | |
}, | |
"name": "round_up_to_mul_of_32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "18333:5:7", | |
"type": "" | |
} | |
], | |
"returnVariables": [ | |
{ | |
"name": "result", | |
"nodeType": "YulTypedName", | |
"src": "18343:6:7", | |
"type": "" | |
} | |
], | |
"src": "18302:102:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18516:66:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "18538:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18546:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "18534:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18534:14:7" | |
}, | |
{ | |
"hexValue": "4d7573742062652070726f706f736564206f776e6572", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "18550:24:7", | |
"type": "", | |
"value": "Must be proposed owner" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "18527:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18527:48:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18527:48:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "18508:6:7", | |
"type": "" | |
} | |
], | |
"src": "18410:172:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18694:66:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "18716:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18724:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "18712:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18712:14:7" | |
}, | |
{ | |
"hexValue": "4f6e6c792063616c6c61626c65206279206f776e6572", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "18728:24:7", | |
"type": "", | |
"value": "Only callable by owner" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "18705:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18705:48:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18705:48:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "18686:6:7", | |
"type": "" | |
} | |
], | |
"src": "18588:172:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "18872:60:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "18894:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "18902:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "18890:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18890:14:7" | |
}, | |
{ | |
"hexValue": "526f6c6c20696e2070726f6772657373", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "18906:18:7", | |
"type": "", | |
"value": "Roll in progress" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "18883:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "18883:42:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "18883:42:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "18864:6:7", | |
"type": "" | |
} | |
], | |
"src": "18766:166:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19044:59:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19066:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19074:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19062:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19062:14:7" | |
}, | |
{ | |
"hexValue": "44696365206e6f7420726f6c6c6564", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19078:17:7", | |
"type": "", | |
"value": "Dice not rolled" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19055:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19055:41:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19055:41:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19036:6:7", | |
"type": "" | |
} | |
], | |
"src": "18938:165:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19215:59:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19237:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19245:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19233:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19233:14:7" | |
}, | |
{ | |
"hexValue": "4e6f7420656e6f756768204c494e4b", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19249:17:7", | |
"type": "", | |
"value": "Not enough LINK" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19226:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19226:41:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19226:41:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19207:6:7", | |
"type": "" | |
} | |
], | |
"src": "19109:165:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19386:75:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19408:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19416:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19404:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19404:14:7" | |
}, | |
{ | |
"hexValue": "4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19420:33:7", | |
"type": "", | |
"value": "Only VRFCoordinator can fulfill" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19397:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19397:57:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19397:57:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19378:6:7", | |
"type": "" | |
} | |
], | |
"src": "19280:181:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19573:70:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19595:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19603:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19591:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19591:14:7" | |
}, | |
{ | |
"hexValue": "4e6f7420656e6f756768204c494e4b20746f2070617920666565", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19607:28:7", | |
"type": "", | |
"value": "Not enough LINK to pay fee" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19584:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19584:52:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19584:52:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19565:6:7", | |
"type": "" | |
} | |
], | |
"src": "19467:176:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19755:67:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19777:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19785:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19773:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19773:14:7" | |
}, | |
{ | |
"hexValue": "43616e6e6f74207472616e7366657220746f2073656c66", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19789:25:7", | |
"type": "", | |
"value": "Cannot transfer to self" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19766:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19766:49:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19766:49:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19747:6:7", | |
"type": "" | |
} | |
], | |
"src": "19649:173:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "19934:58:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulIdentifier", | |
"src": "19956:6:7" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "19964:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "add", | |
"nodeType": "YulIdentifier", | |
"src": "19952:3:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19952:14:7" | |
}, | |
{ | |
"hexValue": "416c726561647920726f6c6c6564", | |
"kind": "string", | |
"nodeType": "YulLiteral", | |
"src": "19968:16:7", | |
"type": "", | |
"value": "Already rolled" | |
} | |
], | |
"functionName": { | |
"name": "mstore", | |
"nodeType": "YulIdentifier", | |
"src": "19945:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "19945:40:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "19945:40:7" | |
} | |
] | |
}, | |
"name": "store_literal_in_memory_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "memPtr", | |
"nodeType": "YulTypedName", | |
"src": "19926:6:7", | |
"type": "" | |
} | |
], | |
"src": "19828:164:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20041:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20098:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20107:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20110:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "20100:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20100:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "20100:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20064:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20089:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_address", | |
"nodeType": "YulIdentifier", | |
"src": "20071:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20071:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "20061:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20061:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "20054:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20054:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "20051:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_address", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "20034:5:7", | |
"type": "" | |
} | |
], | |
"src": "19998:122:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20166:76:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20220:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20229:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20232:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "20222:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20222:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "20222:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20189:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20211:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bool", | |
"nodeType": "YulIdentifier", | |
"src": "20196:14:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20196:21:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "20186:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20186:32:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "20179:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20179:40:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "20176:60:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_bool", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "20159:5:7", | |
"type": "" | |
} | |
], | |
"src": "20126:116:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20291:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20348:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20357:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20360:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "20350:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20350:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "20350:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20314:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20339:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_bytes32", | |
"nodeType": "YulIdentifier", | |
"src": "20321:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20321:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "20311:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20311:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "20304:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20304:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "20301:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_bytes32", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "20284:5:7", | |
"type": "" | |
} | |
], | |
"src": "20248:122:7" | |
}, | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20419:79:7", | |
"statements": [ | |
{ | |
"body": { | |
"nodeType": "YulBlock", | |
"src": "20476:16:7", | |
"statements": [ | |
{ | |
"expression": { | |
"arguments": [ | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20485:1:7", | |
"type": "", | |
"value": "0" | |
}, | |
{ | |
"kind": "number", | |
"nodeType": "YulLiteral", | |
"src": "20488:1:7", | |
"type": "", | |
"value": "0" | |
} | |
], | |
"functionName": { | |
"name": "revert", | |
"nodeType": "YulIdentifier", | |
"src": "20478:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20478:12:7" | |
}, | |
"nodeType": "YulExpressionStatement", | |
"src": "20478:12:7" | |
} | |
] | |
}, | |
"condition": { | |
"arguments": [ | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20442:5:7" | |
}, | |
{ | |
"arguments": [ | |
{ | |
"name": "value", | |
"nodeType": "YulIdentifier", | |
"src": "20467:5:7" | |
} | |
], | |
"functionName": { | |
"name": "cleanup_t_uint256", | |
"nodeType": "YulIdentifier", | |
"src": "20449:17:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20449:24:7" | |
} | |
], | |
"functionName": { | |
"name": "eq", | |
"nodeType": "YulIdentifier", | |
"src": "20439:2:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20439:35:7" | |
} | |
], | |
"functionName": { | |
"name": "iszero", | |
"nodeType": "YulIdentifier", | |
"src": "20432:6:7" | |
}, | |
"nodeType": "YulFunctionCall", | |
"src": "20432:43:7" | |
}, | |
"nodeType": "YulIf", | |
"src": "20429:63:7" | |
} | |
] | |
}, | |
"name": "validator_revert_t_uint256", | |
"nodeType": "YulFunctionDefinition", | |
"parameters": [ | |
{ | |
"name": "value", | |
"nodeType": "YulTypedName", | |
"src": "20412:5:7", | |
"type": "" | |
} | |
], | |
"src": "20376:122:7" | |
} | |
] | |
}, | |
"contents": "{\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(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(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_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_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_addresst_uint256(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 := 32\n\n value1 := abi_decode_t_uint256(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_bytes32t_uint256(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_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_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_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_bytes32(cleanup_t_bytes32(value)))\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_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_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 22)\n store_literal_in_memory_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 22)\n store_literal_in_memory_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 16)\n store_literal_in_memory_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 15)\n store_literal_in_memory_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 15)\n store_literal_in_memory_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 26)\n store_literal_in_memory_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 14)\n store_literal_in_memory_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde(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_uint256_to_t_uint256_nonPadded_inplace_fromStack(value, pos) {\n mstore(pos, leftAlign_t_uint256(cleanup_t_uint256(value)))\n }\n\n function abi_encode_tuple_packed_t_bytes32_t_uint256__to_t_bytes32_t_uint256__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n abi_encode_t_bytes32_to_t_bytes32_nonPadded_inplace_fromStack(value0, pos)\n pos := add(pos, 32)\n\n abi_encode_t_uint256_to_t_uint256_nonPadded_inplace_fromStack(value1, pos)\n pos := add(pos, 32)\n\n end := pos\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function abi_encode_tuple_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n tail := add(headStart, 96)\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 mstore(add(headStart, 64), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value2, tail)\n\n }\n\n function abi_encode_tuple_t_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_bytes32_t_uint256_t_address_t_uint256__to_t_bytes32_t_uint256_t_address_t_uint256__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\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 abi_encode_t_address_to_t_address_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_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_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c__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_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3__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_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228__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_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9__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_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d__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_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445__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_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3__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_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2__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_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_stringliteral_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde__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_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde_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 allocate_unbounded() -> memPtr {\n memPtr := mload(64)\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_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_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function 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 leftAlign_t_bytes32(value) -> aligned {\n aligned := value\n }\n\n function leftAlign_t_uint256(value) -> aligned {\n aligned := value\n }\n\n function mod_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n 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_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\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 round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function store_literal_in_memory_0ff46bbb058c6b1431d73c360a5974025321b7ff6f532fcd8fc819bb0d10498c(memPtr) {\n\n mstore(add(memPtr, 0), \"Must be proposed owner\")\n\n }\n\n function store_literal_in_memory_3bfd5788f2773712a5315b58174111e9db21853c8f7d7554f565be615cce78d3(memPtr) {\n\n mstore(add(memPtr, 0), \"Only callable by owner\")\n\n }\n\n function store_literal_in_memory_4d66d5788c212f49a9d8085bb649fc41870f4974bdfa53648d1515fdda871228(memPtr) {\n\n mstore(add(memPtr, 0), \"Roll in progress\")\n\n }\n\n function store_literal_in_memory_59ffb3a9a74222f0c97749be5af1e576cdabfe017118ddace802181fe2bbefe9(memPtr) {\n\n mstore(add(memPtr, 0), \"Dice not rolled\")\n\n }\n\n function store_literal_in_memory_6c0755f7b177a75a575a6fc1ad54a95f3c29b31e64f77075462b5456f056869d(memPtr) {\n\n mstore(add(memPtr, 0), \"Not enough LINK\")\n\n }\n\n function store_literal_in_memory_aa31d97d949424087cac59e348924584a13a8784d3590fa798a0967391035445(memPtr) {\n\n mstore(add(memPtr, 0), \"Only VRFCoordinator can fulfill\")\n\n }\n\n function store_literal_in_memory_b9f82f1cfee485ef89f7dd563ebb4979f0d09bbb34fd699c007ceef0bd464ca3(memPtr) {\n\n mstore(add(memPtr, 0), \"Not enough LINK to pay fee\")\n\n }\n\n function store_literal_in_memory_d3012c42c6ebc769df901053b800579e25c59d0072411860a37a10b5e66ce5e2(memPtr) {\n\n mstore(add(memPtr, 0), \"Cannot transfer to self\")\n\n }\n\n function store_literal_in_memory_f318a1b732b0806a03ad6af75ffb638e2d59fda395a579c8433a92cf55befdde(memPtr) {\n\n mstore(add(memPtr, 0), \"Already rolled\")\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 function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n", | |
"id": 7, | |
"language": "Yul", | |
"name": "#utility.yul" | |
} | |
], | |
"immutableReferences": { | |
"255": [ | |
{ | |
"length": 32, | |
"start": 1153 | |
}, | |
{ | |
"length": 32, | |
"start": 1767 | |
}, | |
{ | |
"length": 32, | |
"start": 3988 | |
} | |
], | |
"257": [ | |
{ | |
"length": 32, | |
"start": 989 | |
}, | |
{ | |
"length": 32, | |
"start": 4048 | |
} | |
] | |
}, | |
"linkReferences": {}, | |
"object": "608060405234801561001057600080fd5b50600436106100a95760003560e01c8063983fbab211610071578063983fbab21461012c5780639854471014610148578063b1cad5e314610164578063dd02d9e514610194578063ddca3f43146101c4578063f2fde38b146101e2576100a9565b806361728f39146100ae57806369fe0e2d146100cc57806379ba5097146100e85780638da5cb5b146100f257806394985ddd14610110575b600080fd5b6100b66101fe565b6040516100c3919061170d565b60405180910390f35b6100e660048036038101906100e191906113fd565b610208565b005b6100f061021a565b005b6100fa6103b1565b604051610107919061168b565b60405180910390f35b61012a600480360381019061012591906113bd565b6103db565b005b61014660048036038101906101419190611323565b610477565b005b610162600480360381019061015d9190611390565b61056f565b005b61017e600480360381019061017991906112f6565b610581565b60405161018b9190611796565b60405180910390f35b6101ae60048036038101906101a991906112f6565b6106d8565b6040516101bb919061170d565b60405180910390f35b6101cc610941565b6040516101d991906118d8565b60405180910390f35b6101fc60048036038101906101f791906112f6565b61094b565b005b6000600354905090565b61021061095f565b8060048190555050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102a1906117b8565b60405180910390fd5b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161046090611858565b60405180910390fd5b61047382826109f1565b5050565b61047f61095f565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016104da9291906116a6565b602060405180830381600087803b1580156104f457600080fd5b505af1158015610508573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052c9190611363565b61056b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056290611838565b60405180910390fd5b5050565b61057761095f565b8060038190555050565b60606000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105fd90611818565b60405180910390fd5b602a600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541415610689576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610680906117f8565b60405180910390fd5b6106d1600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ab8565b9050919050565b60006106e261095f565b6004547f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161073e919061168b565b60206040518083038186803b15801561075657600080fd5b505afa15801561076a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078e919061142a565b10156107cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c690611878565b60405180910390fd5b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610851576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610848906118b8565b60405180910390fd5b61085f600354600454610f90565b9050816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602a600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16817f923de4fc4aece24a78a9e4ca3009c571a742f81ac2c004a229224b0fd1883bdd60405160405180910390a3919050565b6000600454905090565b61095361095f565b61095c816110ef565b50565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e6906117d8565b60405180910390fd5b565b60006001601483610a029190611a4e565b610a0c919061192b565b905080600660006005600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080837f909dd726737b7ffa4ae9d137e9edebe8a74a9c2910a4b60e8112f93ab217083760405160405180910390a3505050565b606060006040518061028001604052806040518060400160405280600981526020017f54617267617279656e000000000000000000000000000000000000000000000081525081526020016040518060400160405280600981526020017f4c616e6e6973746572000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f537461726b00000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f547972656c6c000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600981526020017f426172617468656f6e000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f4d617274656c6c0000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f54756c6c7900000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f426f6c746f6e000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f477265796a6f790000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f417272796e00000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600481526020017f467265790000000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f4d6f726d6f6e740000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f5461726c6579000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f4461796e6500000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f556d62657200000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f56616c6572796f6e00000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f4d616e6465726c7900000000000000000000000000000000000000000000000081525081526020016040518060400160405280600781526020017f436c6567616e650000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600681526020017f476c6f766572000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f4b6172737461726b000000000000000000000000000000000000000000000000815250815250905080600184610f729190611981565b60148110610f8357610f82611add565b5b6020020151915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16634000aea07f000000000000000000000000000000000000000000000000000000000000000084866000604051602001611004929190611728565b6040516020818303038152906040526040518463ffffffff1660e01b8152600401611031939291906116cf565b602060405180830381600087803b15801561104b57600080fd5b505af115801561105f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110839190611363565b5060006110a5846000306000808981526020019081526020016000205461121e565b90506001600080868152602001908152602001600020546110c6919061192b565b600080868152602001908152602001600020819055506110e6848261125a565b91505092915050565b3373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561115e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115590611898565b60405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae127860405160405180910390a350565b6000848484846040516020016112379493929190611751565b6040516020818303038152906040528051906020012060001c9050949350505050565b6000828260405160200161126f92919061165f565b60405160208183030381529060405280519060200120905092915050565b60008135905061129c81611c93565b92915050565b6000815190506112b181611caa565b92915050565b6000813590506112c681611cc1565b92915050565b6000813590506112db81611cd8565b92915050565b6000815190506112f081611cd8565b92915050565b60006020828403121561130c5761130b611b0c565b5b600061131a8482850161128d565b91505092915050565b6000806040838503121561133a57611339611b0c565b5b60006113488582860161128d565b9250506020611359858286016112cc565b9150509250929050565b60006020828403121561137957611378611b0c565b5b6000611387848285016112a2565b91505092915050565b6000602082840312156113a6576113a5611b0c565b5b60006113b4848285016112b7565b91505092915050565b600080604083850312156113d4576113d3611b0c565b5b60006113e2858286016112b7565b92505060206113f3858286016112cc565b9150509250929050565b60006020828403121561141357611412611b0c565b5b6000611421848285016112cc565b91505092915050565b6000602082840312156114405761143f611b0c565b5b600061144e848285016112e1565b91505092915050565b611460816119b5565b82525050565b61146f816119d3565b82525050565b611486611481826119d3565b611a3a565b82525050565b6000611497826118f3565b6114a18185611909565b93506114b1818560208601611a07565b6114ba81611b11565b840191505092915050565b60006114d0826118fe565b6114da818561191a565b93506114ea818560208601611a07565b6114f381611b11565b840191505092915050565b600061150b60168361191a565b915061151682611b22565b602082019050919050565b600061152e60168361191a565b915061153982611b4b565b602082019050919050565b600061155160108361191a565b915061155c82611b74565b602082019050919050565b6000611574600f8361191a565b915061157f82611b9d565b602082019050919050565b6000611597600f8361191a565b91506115a282611bc6565b602082019050919050565b60006115ba601f8361191a565b91506115c582611bef565b602082019050919050565b60006115dd601a8361191a565b91506115e882611c18565b602082019050919050565b600061160060178361191a565b915061160b82611c41565b602082019050919050565b6000611623600e8361191a565b915061162e82611c6a565b602082019050919050565b611642816119fd565b82525050565b611659611654826119fd565b611a44565b82525050565b600061166b8285611475565b60208201915061167b8284611648565b6020820191508190509392505050565b60006020820190506116a06000830184611457565b92915050565b60006040820190506116bb6000830185611457565b6116c86020830184611639565b9392505050565b60006060820190506116e46000830186611457565b6116f16020830185611639565b8181036040830152611703818461148c565b9050949350505050565b60006020820190506117226000830184611466565b92915050565b600060408201905061173d6000830185611466565b61174a6020830184611639565b9392505050565b60006080820190506117666000830187611466565b6117736020830186611639565b6117806040830185611457565b61178d6060830184611639565b95945050505050565b600060208201905081810360008301526117b081846114c5565b905092915050565b600060208201905081810360008301526117d1816114fe565b9050919050565b600060208201905081810360008301526117f181611521565b9050919050565b6000602082019050818103600083015261181181611544565b9050919050565b6000602082019050818103600083015261183181611567565b9050919050565b600060208201905081810360008301526118518161158a565b9050919050565b60006020820190508181036000830152611871816115ad565b9050919050565b60006020820190508181036000830152611891816115d0565b9050919050565b600060208201905081810360008301526118b1816115f3565b9050919050565b600060208201905081810360008301526118d181611616565b9050919050565b60006020820190506118ed6000830184611639565b92915050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611936826119fd565b9150611941836119fd565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561197657611975611a7f565b5b828201905092915050565b600061198c826119fd565b9150611997836119fd565b9250828210156119aa576119a9611a7f565b5b828203905092915050565b60006119c0826119dd565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b83811015611a25578082015181840152602081019050611a0a565b83811115611a34576000848401525b50505050565b6000819050919050565b6000819050919050565b6000611a59826119fd565b9150611a64836119fd565b925082611a7457611a73611aae565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f4d7573742062652070726f706f736564206f776e657200000000000000000000600082015250565b7f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000600082015250565b7f526f6c6c20696e2070726f677265737300000000000000000000000000000000600082015250565b7f44696365206e6f7420726f6c6c65640000000000000000000000000000000000600082015250565b7f4e6f7420656e6f756768204c494e4b0000000000000000000000000000000000600082015250565b7f4f6e6c7920565246436f6f7264696e61746f722063616e2066756c66696c6c00600082015250565b7f4e6f7420656e6f756768204c494e4b20746f2070617920666565000000000000600082015250565b7f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000600082015250565b7f416c726561647920726f6c6c6564000000000000000000000000000000000000600082015250565b611c9c816119b5565b8114611ca757600080fd5b50565b611cb3816119c7565b8114611cbe57600080fd5b50565b611cca816119d3565b8114611cd557600080fd5b50565b611ce1816119fd565b8114611cec57600080fd5b5056fea26469706673582212205c603d7221c2c6c0ab14db8aa6e0b3da3ed175ee88bc614708699eeeb9b96f1364736f6c63430008070033", | |
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xA9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x983FBAB2 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0x983FBAB2 EQ PUSH2 0x12C JUMPI DUP1 PUSH4 0x98544710 EQ PUSH2 0x148 JUMPI DUP1 PUSH4 0xB1CAD5E3 EQ PUSH2 0x164 JUMPI DUP1 PUSH4 0xDD02D9E5 EQ PUSH2 0x194 JUMPI DUP1 PUSH4 0xDDCA3F43 EQ PUSH2 0x1C4 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x1E2 JUMPI PUSH2 0xA9 JUMP JUMPDEST DUP1 PUSH4 0x61728F39 EQ PUSH2 0xAE JUMPI DUP1 PUSH4 0x69FE0E2D EQ PUSH2 0xCC JUMPI DUP1 PUSH4 0x79BA5097 EQ PUSH2 0xE8 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0xF2 JUMPI DUP1 PUSH4 0x94985DDD EQ PUSH2 0x110 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xB6 PUSH2 0x1FE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC3 SWAP2 SWAP1 PUSH2 0x170D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xE6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE1 SWAP2 SWAP1 PUSH2 0x13FD JUMP JUMPDEST PUSH2 0x208 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xF0 PUSH2 0x21A JUMP JUMPDEST STOP JUMPDEST PUSH2 0xFA PUSH2 0x3B1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x107 SWAP2 SWAP1 PUSH2 0x168B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x12A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x125 SWAP2 SWAP1 PUSH2 0x13BD JUMP JUMPDEST PUSH2 0x3DB JUMP JUMPDEST STOP JUMPDEST PUSH2 0x146 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x141 SWAP2 SWAP1 PUSH2 0x1323 JUMP JUMPDEST PUSH2 0x477 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x162 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15D SWAP2 SWAP1 PUSH2 0x1390 JUMP JUMPDEST PUSH2 0x56F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x179 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x581 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x18B SWAP2 SWAP1 PUSH2 0x1796 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1A9 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x6D8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1BB SWAP2 SWAP1 PUSH2 0x170D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1CC PUSH2 0x941 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D9 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1FC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1F7 SWAP2 SWAP1 PUSH2 0x12F6 JUMP JUMPDEST PUSH2 0x94B JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH1 0x3 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x210 PUSH2 0x95F JUMP JUMPDEST DUP1 PUSH1 0x4 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2A1 SWAP1 PUSH2 0x17B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP CALLER PUSH1 0x1 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 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x469 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x460 SWAP1 PUSH2 0x1858 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x473 DUP3 DUP3 PUSH2 0x9F1 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x47F PUSH2 0x95F JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4DA SWAP3 SWAP2 SWAP1 PUSH2 0x16A6 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x4F4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x508 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 0x52C SWAP2 SWAP1 PUSH2 0x1363 JUMP JUMPDEST PUSH2 0x56B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x562 SWAP1 PUSH2 0x1838 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x577 PUSH2 0x95F JUMP JUMPDEST DUP1 PUSH1 0x3 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ ISZERO PUSH2 0x606 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5FD SWAP1 PUSH2 0x1818 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2A PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ ISZERO PUSH2 0x689 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x680 SWAP1 PUSH2 0x17F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0xAB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6E2 PUSH2 0x95F JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x73E SWAP2 SWAP1 PUSH2 0x168B JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x756 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x76A 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 0x78E SWAP2 SWAP1 PUSH2 0x142A JUMP JUMPDEST LT ISZERO PUSH2 0x7CF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7C6 SWAP1 PUSH2 0x1878 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0x851 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x848 SWAP1 PUSH2 0x18B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x85F PUSH1 0x3 SLOAD PUSH1 0x4 SLOAD PUSH2 0xF90 JUMP JUMPDEST SWAP1 POP DUP2 PUSH1 0x5 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2A PUSH1 0x6 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH32 0x923DE4FC4AECE24A78A9E4CA3009C571A742F81AC2C004A229224B0FD1883BDD PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x953 PUSH2 0x95F JUMP JUMPDEST PUSH2 0x95C DUP2 PUSH2 0x10EF JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x9EF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9E6 SWAP1 PUSH2 0x17D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x14 DUP4 PUSH2 0xA02 SWAP2 SWAP1 PUSH2 0x1A4E JUMP JUMPDEST PUSH2 0xA0C SWAP2 SWAP1 PUSH2 0x192B JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x6 PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP1 DUP4 PUSH32 0x909DD726737B7FFA4AE9D137E9EDEBE8A74A9C2910A4B60E8112F93AB2170837 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x280 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54617267617279656E0000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4C616E6E69737465720000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x537461726B000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x547972656C6C0000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x426172617468656F6E0000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D617274656C6C00000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x54756C6C79000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x426F6C746F6E0000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x477265796A6F7900000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x417272796E000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4672657900000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D6F726D6F6E7400000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5461726C65790000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4461796E65000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x556D626572000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x56616C6572796F6E000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4D616E6465726C79000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x436C6567616E6500000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x6 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x476C6F7665720000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x8 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4B6172737461726B000000000000000000000000000000000000000000000000 DUP2 MSTORE POP DUP2 MSTORE POP SWAP1 POP DUP1 PUSH1 0x1 DUP5 PUSH2 0xF72 SWAP2 SWAP1 PUSH2 0x1981 JUMP JUMPDEST PUSH1 0x14 DUP2 LT PUSH2 0xF83 JUMPI PUSH2 0xF82 PUSH2 0x1ADD JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP5 DUP7 PUSH1 0x0 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1004 SWAP3 SWAP2 SWAP1 PUSH2 0x1728 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1031 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x16CF JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x104B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x105F 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 0x1083 SWAP2 SWAP1 PUSH2 0x1363 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x10A5 DUP5 PUSH1 0x0 ADDRESS PUSH1 0x0 DUP1 DUP10 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x121E JUMP JUMPDEST SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD PUSH2 0x10C6 SWAP2 SWAP1 PUSH2 0x192B JUMP JUMPDEST PUSH1 0x0 DUP1 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP PUSH2 0x10E6 DUP5 DUP3 PUSH2 0x125A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x115E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1155 SWAP1 PUSH2 0x1898 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x2 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xED8889F560326EB138920D842192F0EB3DD22B4F139C87A2C57538E05BAE1278 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 DUP5 DUP5 DUP5 DUP5 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1237 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1751 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 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x126F SWAP3 SWAP2 SWAP1 PUSH2 0x165F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x129C DUP2 PUSH2 0x1C93 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x12B1 DUP2 PUSH2 0x1CAA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x12C6 DUP2 PUSH2 0x1CC1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x12DB DUP2 PUSH2 0x1CD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x12F0 DUP2 PUSH2 0x1CD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x130C JUMPI PUSH2 0x130B PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x131A DUP5 DUP3 DUP6 ADD PUSH2 0x128D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x133A JUMPI PUSH2 0x1339 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1348 DUP6 DUP3 DUP7 ADD PUSH2 0x128D JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1359 DUP6 DUP3 DUP7 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1379 JUMPI PUSH2 0x1378 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1387 DUP5 DUP3 DUP6 ADD PUSH2 0x12A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x13A6 JUMPI PUSH2 0x13A5 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x13B4 DUP5 DUP3 DUP6 ADD PUSH2 0x12B7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x13D4 JUMPI PUSH2 0x13D3 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x13E2 DUP6 DUP3 DUP7 ADD PUSH2 0x12B7 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x13F3 DUP6 DUP3 DUP7 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1413 JUMPI PUSH2 0x1412 PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1421 DUP5 DUP3 DUP6 ADD PUSH2 0x12CC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1440 JUMPI PUSH2 0x143F PUSH2 0x1B0C JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x144E DUP5 DUP3 DUP6 ADD PUSH2 0x12E1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1460 DUP2 PUSH2 0x19B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x146F DUP2 PUSH2 0x19D3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1486 PUSH2 0x1481 DUP3 PUSH2 0x19D3 JUMP JUMPDEST PUSH2 0x1A3A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1497 DUP3 PUSH2 0x18F3 JUMP JUMPDEST PUSH2 0x14A1 DUP2 DUP6 PUSH2 0x1909 JUMP JUMPDEST SWAP4 POP PUSH2 0x14B1 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1A07 JUMP JUMPDEST PUSH2 0x14BA DUP2 PUSH2 0x1B11 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x14D0 DUP3 PUSH2 0x18FE JUMP JUMPDEST PUSH2 0x14DA DUP2 DUP6 PUSH2 0x191A JUMP JUMPDEST SWAP4 POP PUSH2 0x14EA DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1A07 JUMP JUMPDEST PUSH2 0x14F3 DUP2 PUSH2 0x1B11 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x150B PUSH1 0x16 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x1516 DUP3 PUSH2 0x1B22 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x152E PUSH1 0x16 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x1539 DUP3 PUSH2 0x1B4B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1551 PUSH1 0x10 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x155C DUP3 PUSH2 0x1B74 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1574 PUSH1 0xF DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x157F DUP3 PUSH2 0x1B9D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1597 PUSH1 0xF DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15A2 DUP3 PUSH2 0x1BC6 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15BA PUSH1 0x1F DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15C5 DUP3 PUSH2 0x1BEF JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x15DD PUSH1 0x1A DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x15E8 DUP3 PUSH2 0x1C18 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1600 PUSH1 0x17 DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x160B DUP3 PUSH2 0x1C41 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1623 PUSH1 0xE DUP4 PUSH2 0x191A JUMP JUMPDEST SWAP2 POP PUSH2 0x162E DUP3 PUSH2 0x1C6A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1642 DUP2 PUSH2 0x19FD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1659 PUSH2 0x1654 DUP3 PUSH2 0x19FD JUMP JUMPDEST PUSH2 0x1A44 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x166B DUP3 DUP6 PUSH2 0x1475 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP PUSH2 0x167B DUP3 DUP5 PUSH2 0x1648 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x16A0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1457 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x16BB PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x16C8 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x16E4 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x16F1 PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x1639 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x40 DUP4 ADD MSTORE PUSH2 0x1703 DUP2 DUP5 PUSH2 0x148C JUMP JUMPDEST SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1722 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1466 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x173D PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1466 JUMP JUMPDEST PUSH2 0x174A PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x1766 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x1466 JUMP JUMPDEST PUSH2 0x1773 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x1639 JUMP JUMPDEST PUSH2 0x1780 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x1457 JUMP JUMPDEST PUSH2 0x178D PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x17B0 DUP2 DUP5 PUSH2 0x14C5 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 0x17D1 DUP2 PUSH2 0x14FE 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 0x17F1 DUP2 PUSH2 0x1521 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 0x1811 DUP2 PUSH2 0x1544 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 0x1831 DUP2 PUSH2 0x1567 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 0x1851 DUP2 PUSH2 0x158A 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 0x1871 DUP2 PUSH2 0x15AD 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 0x1891 DUP2 PUSH2 0x15D0 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 0x18B1 DUP2 PUSH2 0x15F3 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 0x18D1 DUP2 PUSH2 0x1616 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x18ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1639 JUMP JUMPDEST SWAP3 SWAP2 POP 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 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 0x1936 DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1941 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1976 JUMPI PUSH2 0x1975 PUSH2 0x1A7F JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x198C DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1997 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x19AA JUMPI PUSH2 0x19A9 PUSH2 0x1A7F JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x19C0 DUP3 PUSH2 0x19DD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1A25 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1A0A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1A34 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST 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 PUSH2 0x1A59 DUP3 PUSH2 0x19FD JUMP JUMPDEST SWAP2 POP PUSH2 0x1A64 DUP4 PUSH2 0x19FD JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x1A74 JUMPI PUSH2 0x1A73 PUSH2 0x1AAE 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 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 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 0x4D7573742062652070726F706F736564206F776E657200000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x526F6C6C20696E2070726F677265737300000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x44696365206E6F7420726F6C6C65640000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B0000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4E6F7420656E6F756768204C494E4B20746F2070617920666565000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x43616E6E6F74207472616E7366657220746F2073656C66000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x416C726561647920726F6C6C6564000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x1C9C DUP2 PUSH2 0x19B5 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CA7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CB3 DUP2 PUSH2 0x19C7 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CBE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CCA DUP2 PUSH2 0x19D3 JUMP JUMPDEST DUP2 EQ PUSH2 0x1CD5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1CE1 DUP2 PUSH2 0x19FD JUMP JUMPDEST DUP2 EQ PUSH2 0x1CEC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x5C PUSH1 0x3D PUSH19 0x21C2C6C0AB14DB8AA6E0B3DA3ED175EE88BC61 SELFBALANCE ADDMOD PUSH10 0x9EEEB9B96F1364736F6C PUSH4 0x43000807 STOP CALLER ", | |
"sourceMap": "373:5564:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4760:82;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4957:74;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1077:275:1;;;:::i;:::-;;1403:111;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9639:225:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4337:135:6;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4578:90;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3670:258;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2039:418;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5118:74;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;863:122:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4760:82:6;4800:7;4826:9;;4819:16;;4760:82;:::o;4957:74::-;2081:20:1;:18;:20::i;:::-;5021:3:6::1;5013:5;:11;;;;4957:74:::0;:::o;1077:275:1:-;1160:14;;;;;;;;;;;1146:28;;:10;:28;;;1138:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;1208:16;1227:7;;;;;;;;;;;1208:26;;1250:10;1240:7;;:20;;;;;;;;;;;;;;;;;;1291:1;1266:14;;:27;;;;;;;;;;;;;;;;;;1336:10;1305:42;;1326:8;1305:42;;;;;;;;;;;;1132:220;1077:275::o;1403:111::-;1473:7;1502;;;;;;;;;;;1495:14;;1403:111;:::o;9639:225:2:-;9763:14;9749:28;;:10;:28;;;9741:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;9819:40;9837:9;9848:10;9819:17;:40::i;:::-;9639:225;;:::o;4337:135:6:-;2081:20:1;:18;:20::i;:::-;4421:4:6::1;:13;;;4435:2;4439:5;4421:24;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4413:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;4337:135:::0;;:::o;4578:90::-;2081:20:1;:18;:20::i;:::-;4654:7:6::1;4642:9;:19;;;;4578:90:::0;:::o;3670:258::-;3722:13;3776:1;3755:9;:17;3765:6;3755:17;;;;;;;;;;;;;;;;:22;;3747:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;486:2;3815:9;:17;3825:6;3815:17;;;;;;;;;;;;;;;;:37;;3807:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;3890:31;3903:9;:17;3913:6;3903:17;;;;;;;;;;;;;;;;3890:12;:31::i;:::-;3883:38;;3670:258;;;:::o;2039:418::-;2099:17;2081:20:1;:18;:20::i;:::-;2169:5:6::1;;2136:4;:14;;;2159:4;2136:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:38;;2128:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;2244:1;2223:9;:17;2233:6;2223:17;;;;;;;;;;;;;;;;:22;2215:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;2286:35;2304:9;;2315:5;;2286:17;:35::i;:::-;2274:47;;2354:6;2331:9;:20;2341:9;2331:20;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;486:2;2370:9;:17;2380:6;2370:17;;;;;;;;;;;;;;;:36;;;;2443:6;2421:29;;2432:9;2421:29;;;;;;;;;;2039:418:::0;;;:::o;5118:74::-;5154:7;5180:5;;5173:12;;5118:74;:::o;863:122:1:-;2081:20;:18;:20::i;:::-;958:22:::1;977:2;958:18;:22::i;:::-;863:122:::0;:::o;1845:121::-;1927:7;;;;;;;;;;;1913:21;;:10;:21;;;1905:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1845:121::o;3267:239:6:-;3361:16;3400:1;3394:2;3381:10;:15;;;;:::i;:::-;3380:21;;;;:::i;:::-;3361:40;;3445:8;3411:9;:31;3421:9;:20;3431:9;3421:20;;;;;;;;;;;;;;;;;;;;;3411:31;;;;;;;;;;;;;;;:42;;;;3490:8;3479:9;3468:31;;;;;;;;;;3351:155;3267:239;;:::o;5319:616::-;5375:13;5400:28;:493;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5910:10;5926:1;5921:2;:6;;;;:::i;:::-;5910:18;;;;;;;:::i;:::-;;;;;;5903:25;;;5319:616;;;:::o;7752:1055:2:-;7856:17;7888:4;:20;;;7909:14;7925:4;7942:8;6609:1;7931:43;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7888:87;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8206:15;8225:82;8242:8;6609:1;8283:4;8290:6;:16;8297:8;8290:16;;;;;;;;;;;;8225;:82::i;:::-;8206:101;;8756:1;8737:6;:16;8744:8;8737:16;;;;;;;;;;;;:20;;;;:::i;:::-;8718:6;:16;8725:8;8718:16;;;;;;;;;;;:39;;;;8770:32;8784:8;8794:7;8770:13;:32::i;:::-;8763:39;;;7752:1055;;;;:::o;1598:202:1:-;1680:10;1674:16;;:2;:16;;;;1666:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;1742:2;1725:14;;:19;;;;;;;;;;;;;;;;;;1792:2;1756:39;;1783:7;;;;;;;;;;;1756:39;;;;;;;;;;;;1598:202;:::o;797:266:3:-;958:7;1016:8;1026:9;1037:10;1049:6;1005:51;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;995:62;;;;;;987:71;;980:78;;797:266;;;;;;:::o;1443:204::-;1561:7;1617:8;1627:13;1600:41;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1590:52;;;;;;1583:59;;1443:204;;;;:::o;7:139:7:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:137::-;206:5;237:6;231:13;222:22;;253:30;277:5;253:30;:::i;:::-;152:137;;;;:::o;295:139::-;341:5;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;295:139;;;;:::o;440:::-;486:5;524:6;511:20;502:29;;540:33;567:5;540:33;:::i;:::-;440:139;;;;:::o;585:143::-;642:5;673:6;667:13;658:22;;689:33;716:5;689:33;:::i;:::-;585:143;;;;:::o;734:329::-;793:6;842:2;830:9;821:7;817:23;813:32;810:119;;;848:79;;:::i;:::-;810:119;968:1;993:53;1038:7;1029:6;1018:9;1014:22;993:53;:::i;:::-;983:63;;939:117;734:329;;;;:::o;1069:474::-;1137:6;1145;1194:2;1182:9;1173:7;1169:23;1165:32;1162:119;;;1200:79;;:::i;:::-;1162:119;1320:1;1345:53;1390:7;1381:6;1370:9;1366:22;1345:53;:::i;:::-;1335:63;;1291:117;1447:2;1473:53;1518:7;1509:6;1498:9;1494:22;1473:53;:::i;:::-;1463:63;;1418:118;1069:474;;;;;:::o;1549:345::-;1616:6;1665:2;1653:9;1644:7;1640:23;1636:32;1633:119;;;1671:79;;:::i;:::-;1633:119;1791:1;1816:61;1869:7;1860:6;1849:9;1845:22;1816:61;:::i;:::-;1806:71;;1762:125;1549:345;;;;:::o;1900:329::-;1959:6;2008:2;1996:9;1987:7;1983:23;1979:32;1976:119;;;2014:79;;:::i;:::-;1976:119;2134:1;2159:53;2204:7;2195:6;2184:9;2180:22;2159:53;:::i;:::-;2149:63;;2105:117;1900:329;;;;:::o;2235:474::-;2303:6;2311;2360:2;2348:9;2339:7;2335:23;2331:32;2328:119;;;2366:79;;:::i;:::-;2328:119;2486:1;2511:53;2556:7;2547:6;2536:9;2532:22;2511:53;:::i;:::-;2501:63;;2457:117;2613:2;2639:53;2684:7;2675:6;2664:9;2660:22;2639:53;:::i;:::-;2629:63;;2584:118;2235:474;;;;;:::o;2715:329::-;2774:6;2823:2;2811:9;2802:7;2798:23;2794:32;2791:119;;;2829:79;;:::i;:::-;2791:119;2949:1;2974:53;3019:7;3010:6;2999:9;2995:22;2974:53;:::i;:::-;2964:63;;2920:117;2715:329;;;;:::o;3050:351::-;3120:6;3169:2;3157:9;3148:7;3144:23;3140:32;3137:119;;;3175:79;;:::i;:::-;3137:119;3295:1;3320:64;3376:7;3367:6;3356:9;3352:22;3320:64;:::i;:::-;3310:74;;3266:128;3050:351;;;;:::o;3407:118::-;3494:24;3512:5;3494:24;:::i;:::-;3489:3;3482:37;3407:118;;:::o;3531:::-;3618:24;3636:5;3618:24;:::i;:::-;3613:3;3606:37;3531:118;;:::o;3655:157::-;3760:45;3780:24;3798:5;3780:24;:::i;:::-;3760:45;:::i;:::-;3755:3;3748:58;3655:157;;:::o;3818:360::-;3904:3;3932:38;3964:5;3932:38;:::i;:::-;3986:70;4049:6;4044:3;3986:70;:::i;:::-;3979:77;;4065:52;4110:6;4105:3;4098:4;4091:5;4087:16;4065:52;:::i;:::-;4142:29;4164:6;4142:29;:::i;:::-;4137:3;4133:39;4126:46;;3908:270;3818:360;;;;:::o;4184:364::-;4272:3;4300:39;4333:5;4300:39;:::i;:::-;4355:71;4419:6;4414:3;4355:71;:::i;:::-;4348:78;;4435:52;4480:6;4475:3;4468:4;4461:5;4457:16;4435:52;:::i;:::-;4512:29;4534:6;4512:29;:::i;:::-;4507:3;4503:39;4496:46;;4276:272;4184:364;;;;:::o;4554:366::-;4696:3;4717:67;4781:2;4776:3;4717:67;:::i;:::-;4710:74;;4793:93;4882:3;4793:93;:::i;:::-;4911:2;4906:3;4902:12;4895:19;;4554:366;;;:::o;4926:::-;5068:3;5089:67;5153:2;5148:3;5089:67;:::i;:::-;5082:74;;5165:93;5254:3;5165:93;:::i;:::-;5283:2;5278:3;5274:12;5267:19;;4926:366;;;:::o;5298:::-;5440:3;5461:67;5525:2;5520:3;5461:67;:::i;:::-;5454:74;;5537:93;5626:3;5537:93;:::i;:::-;5655:2;5650:3;5646:12;5639:19;;5298:366;;;:::o;5670:::-;5812:3;5833:67;5897:2;5892:3;5833:67;:::i;:::-;5826:74;;5909:93;5998:3;5909:93;:::i;:::-;6027:2;6022:3;6018:12;6011:19;;5670:366;;;:::o;6042:::-;6184:3;6205:67;6269:2;6264:3;6205:67;:::i;:::-;6198:74;;6281:93;6370:3;6281:93;:::i;:::-;6399:2;6394:3;6390:12;6383:19;;6042:366;;;:::o;6414:::-;6556:3;6577:67;6641:2;6636:3;6577:67;:::i;:::-;6570:74;;6653:93;6742:3;6653:93;:::i;:::-;6771:2;6766:3;6762:12;6755:19;;6414:366;;;:::o;6786:::-;6928:3;6949:67;7013:2;7008:3;6949:67;:::i;:::-;6942:74;;7025:93;7114:3;7025:93;:::i;:::-;7143:2;7138:3;7134:12;7127:19;;6786:366;;;:::o;7158:::-;7300:3;7321:67;7385:2;7380:3;7321:67;:::i;:::-;7314:74;;7397:93;7486:3;7397:93;:::i;:::-;7515:2;7510:3;7506:12;7499:19;;7158:366;;;:::o;7530:::-;7672:3;7693:67;7757:2;7752:3;7693:67;:::i;:::-;7686:74;;7769:93;7858:3;7769:93;:::i;:::-;7887:2;7882:3;7878:12;7871:19;;7530:366;;;:::o;7902:118::-;7989:24;8007:5;7989:24;:::i;:::-;7984:3;7977:37;7902:118;;:::o;8026:157::-;8131:45;8151:24;8169:5;8151:24;:::i;:::-;8131:45;:::i;:::-;8126:3;8119:58;8026:157;;:::o;8189:397::-;8329:3;8344:75;8415:3;8406:6;8344:75;:::i;:::-;8444:2;8439:3;8435:12;8428:19;;8457:75;8528:3;8519:6;8457:75;:::i;:::-;8557:2;8552:3;8548:12;8541:19;;8577:3;8570:10;;8189:397;;;;;:::o;8592:222::-;8685:4;8723:2;8712:9;8708:18;8700:26;;8736:71;8804:1;8793:9;8789:17;8780:6;8736:71;:::i;:::-;8592:222;;;;:::o;8820:332::-;8941:4;8979:2;8968:9;8964:18;8956:26;;8992:71;9060:1;9049:9;9045:17;9036:6;8992:71;:::i;:::-;9073:72;9141:2;9130:9;9126:18;9117:6;9073:72;:::i;:::-;8820:332;;;;;:::o;9158:529::-;9325:4;9363:2;9352:9;9348:18;9340:26;;9376:71;9444:1;9433:9;9429:17;9420:6;9376:71;:::i;:::-;9457:72;9525:2;9514:9;9510:18;9501:6;9457:72;:::i;:::-;9576:9;9570:4;9566:20;9561:2;9550:9;9546:18;9539:48;9604:76;9675:4;9666:6;9604:76;:::i;:::-;9596:84;;9158:529;;;;;;:::o;9693:222::-;9786:4;9824:2;9813:9;9809:18;9801:26;;9837:71;9905:1;9894:9;9890:17;9881:6;9837:71;:::i;:::-;9693:222;;;;:::o;9921:332::-;10042:4;10080:2;10069:9;10065:18;10057:26;;10093:71;10161:1;10150:9;10146:17;10137:6;10093:71;:::i;:::-;10174:72;10242:2;10231:9;10227:18;10218:6;10174:72;:::i;:::-;9921:332;;;;;:::o;10259:553::-;10436:4;10474:3;10463:9;10459:19;10451:27;;10488:71;10556:1;10545:9;10541:17;10532:6;10488:71;:::i;:::-;10569:72;10637:2;10626:9;10622:18;10613:6;10569:72;:::i;:::-;10651;10719:2;10708:9;10704:18;10695:6;10651:72;:::i;:::-;10733;10801:2;10790:9;10786:18;10777:6;10733:72;:::i;:::-;10259:553;;;;;;;:::o;10818:313::-;10931:4;10969:2;10958:9;10954:18;10946:26;;11018:9;11012:4;11008:20;11004:1;10993:9;10989:17;10982:47;11046:78;11119:4;11110:6;11046:78;:::i;:::-;11038:86;;10818:313;;;;:::o;11137:419::-;11303:4;11341:2;11330:9;11326:18;11318:26;;11390:9;11384:4;11380:20;11376:1;11365:9;11361:17;11354:47;11418:131;11544:4;11418:131;:::i;:::-;11410:139;;11137:419;;;:::o;11562:::-;11728:4;11766:2;11755:9;11751:18;11743:26;;11815:9;11809:4;11805:20;11801:1;11790:9;11786:17;11779:47;11843:131;11969:4;11843:131;:::i;:::-;11835:139;;11562:419;;;:::o;11987:::-;12153:4;12191:2;12180:9;12176:18;12168:26;;12240:9;12234:4;12230:20;12226:1;12215:9;12211:17;12204:47;12268:131;12394:4;12268:131;:::i;:::-;12260:139;;11987:419;;;:::o;12412:::-;12578:4;12616:2;12605:9;12601:18;12593:26;;12665:9;12659:4;12655:20;12651:1;12640:9;12636:17;12629:47;12693:131;12819:4;12693:131;:::i;:::-;12685:139;;12412:419;;;:::o;12837:::-;13003:4;13041:2;13030:9;13026:18;13018:26;;13090:9;13084:4;13080:20;13076:1;13065:9;13061:17;13054:47;13118:131;13244:4;13118:131;:::i;:::-;13110:139;;12837:419;;;:::o;13262:::-;13428:4;13466:2;13455:9;13451:18;13443:26;;13515:9;13509:4;13505:20;13501:1;13490:9;13486:17;13479:47;13543:131;13669:4;13543:131;:::i;:::-;13535:139;;13262:419;;;:::o;13687:::-;13853:4;13891:2;13880:9;13876:18;13868:26;;13940:9;13934:4;13930:20;13926:1;13915:9;13911:17;13904:47;13968:131;14094:4;13968:131;:::i;:::-;13960:139;;13687:419;;;:::o;14112:::-;14278:4;14316:2;14305:9;14301:18;14293:26;;14365:9;14359:4;14355:20;14351:1;14340:9;14336:17;14329:47;14393:131;14519:4;14393:131;:::i;:::-;14385:139;;14112:419;;;:::o;14537:::-;14703:4;14741:2;14730:9;14726:18;14718:26;;14790:9;14784:4;14780:20;14776:1;14765:9;14761:17;14754:47;14818:131;14944:4;14818:131;:::i;:::-;14810:139;;14537:419;;;:::o;14962:222::-;15055:4;15093:2;15082:9;15078:18;15070:26;;15106:71;15174:1;15163:9;15159:17;15150:6;15106:71;:::i;:::-;14962:222;;;;:::o;15271:98::-;15322:6;15356:5;15350:12;15340:22;;15271:98;;;:::o;15375:99::-;15427:6;15461:5;15455:12;15445:22;;15375:99;;;:::o;15480:168::-;15563:11;15597:6;15592:3;15585:19;15637:4;15632:3;15628:14;15613:29;;15480:168;;;;:::o;15654:169::-;15738:11;15772:6;15767:3;15760:19;15812:4;15807:3;15803:14;15788:29;;15654:169;;;;:::o;15829:305::-;15869:3;15888:20;15906:1;15888:20;:::i;:::-;15883:25;;15922:20;15940:1;15922:20;:::i;:::-;15917:25;;16076:1;16008:66;16004:74;16001:1;15998:81;15995:107;;;16082:18;;:::i;:::-;15995:107;16126:1;16123;16119:9;16112:16;;15829:305;;;;:::o;16140:191::-;16180:4;16200:20;16218:1;16200:20;:::i;:::-;16195:25;;16234:20;16252:1;16234:20;:::i;:::-;16229:25;;16273:1;16270;16267:8;16264:34;;;16278:18;;:::i;:::-;16264:34;16323:1;16320;16316:9;16308:17;;16140:191;;;;:::o;16337:96::-;16374:7;16403:24;16421:5;16403:24;:::i;:::-;16392:35;;16337:96;;;:::o;16439:90::-;16473:7;16516:5;16509:13;16502:21;16491:32;;16439:90;;;:::o;16535:77::-;16572:7;16601:5;16590:16;;16535:77;;;:::o;16618:126::-;16655:7;16695:42;16688:5;16684:54;16673:65;;16618:126;;;:::o;16750:77::-;16787:7;16816:5;16805:16;;16750:77;;;:::o;16833:307::-;16901:1;16911:113;16925:6;16922:1;16919:13;16911:113;;;17010:1;17005:3;17001:11;16995:18;16991:1;16986:3;16982:11;16975:39;16947:2;16944:1;16940:10;16935:15;;16911:113;;;17042:6;17039:1;17036:13;17033:101;;;17122:1;17113:6;17108:3;17104:16;17097:27;17033:101;16882:258;16833:307;;;:::o;17146:79::-;17185:7;17214:5;17203:16;;17146:79;;;:::o;17231:::-;17270:7;17299:5;17288:16;;17231:79;;;:::o;17316:176::-;17348:1;17365:20;17383:1;17365:20;:::i;:::-;17360:25;;17399:20;17417:1;17399:20;:::i;:::-;17394:25;;17438:1;17428:35;;17443:18;;:::i;:::-;17428:35;17484:1;17481;17477:9;17472:14;;17316:176;;;;:::o;17498:180::-;17546:77;17543:1;17536:88;17643:4;17640:1;17633:15;17667:4;17664:1;17657:15;17684:180;17732:77;17729:1;17722:88;17829:4;17826:1;17819:15;17853:4;17850:1;17843:15;17870:180;17918:77;17915:1;17908:88;18015:4;18012:1;18005:15;18039:4;18036:1;18029:15;18179:117;18288:1;18285;18278:12;18302:102;18343:6;18394:2;18390:7;18385:2;18378:5;18374:14;18370:28;18360:38;;18302:102;;;:::o;18410:172::-;18550:24;18546:1;18538:6;18534:14;18527:48;18410:172;:::o;18588:::-;18728:24;18724:1;18716:6;18712:14;18705:48;18588:172;:::o;18766:166::-;18906:18;18902:1;18894:6;18890:14;18883:42;18766:166;:::o;18938:165::-;19078:17;19074:1;19066:6;19062:14;19055:41;18938:165;:::o;19109:::-;19249:17;19245:1;19237:6;19233:14;19226:41;19109:165;:::o;19280:181::-;19420:33;19416:1;19408:6;19404:14;19397:57;19280:181;:::o;19467:176::-;19607:28;19603:1;19595:6;19591:14;19584:52;19467:176;:::o;19649:173::-;19789:25;19785:1;19777:6;19773:14;19766:49;19649:173;:::o;19828:164::-;19968:16;19964:1;19956:6;19952:14;19945:40;19828:164;:::o;19998:122::-;20071:24;20089:5;20071:24;:::i;:::-;20064:5;20061:35;20051:63;;20110:1;20107;20100:12;20051:63;19998:122;:::o;20126:116::-;20196:21;20211:5;20196:21;:::i;:::-;20189:5;20186:32;20176:60;;20232:1;20229;20222:12;20176:60;20126:116;:::o;20248:122::-;20321:24;20339:5;20321:24;:::i;:::-;20314:5;20311:35;20301:63;;20360:1;20357;20350:12;20301:63;20248:122;:::o;20376:::-;20449:24;20467:5;20449:24;:::i;:::-;20442:5;20439:35;20429:63;;20488:1;20485;20478:12;20429:63;20376:122;:::o" | |
}, | |
"gasEstimates": { | |
"creation": { | |
"codeDepositCost": "1492200", | |
"executionCost": "infinite", | |
"totalCost": "infinite" | |
}, | |
"external": { | |
"acceptOwnership()": "54585", | |
"fee()": "2525", | |
"house(address)": "infinite", | |
"keyHash()": "2438", | |
"owner()": "2589", | |
"rawFulfillRandomness(bytes32,uint256)": "infinite", | |
"rollDice(address)": "infinite", | |
"setFee(uint256)": "24737", | |
"setKeyHash(bytes32)": "24736", | |
"transferOwnership(address)": "30773", | |
"withdrawLINK(address,uint256)": "infinite" | |
}, | |
"internal": { | |
"fulfillRandomness(bytes32,uint256)": "infinite", | |
"getHouseName(uint256)": "infinite" | |
} | |
}, | |
"methodIdentifiers": { | |
"acceptOwnership()": "79ba5097", | |
"fee()": "ddca3f43", | |
"house(address)": "b1cad5e3", | |
"keyHash()": "61728f39", | |
"owner()": "8da5cb5b", | |
"rawFulfillRandomness(bytes32,uint256)": "94985ddd", | |
"rollDice(address)": "dd02d9e5", | |
"setFee(uint256)": "69fe0e2d", | |
"setKeyHash(bytes32)": "98544710", | |
"transferOwnership(address)": "f2fde38b", | |
"withdrawLINK(address,uint256)": "983fbab2" | |
} | |
}, | |
"abi": [ | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "vrfCoordinator", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "link", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bytes32", | |
"name": "keyHash", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "fee", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "uint256", | |
"name": "result", | |
"type": "uint256" | |
} | |
], | |
"name": "DiceLanded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "roller", | |
"type": "address" | |
} | |
], | |
"name": "DiceRolled", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
} | |
], | |
"name": "OwnershipTransferRequested", | |
"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" | |
}, | |
{ | |
"inputs": [], | |
"name": "acceptOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "fee", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "player", | |
"type": "address" | |
} | |
], | |
"name": "house", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "keyHash", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "randomness", | |
"type": "uint256" | |
} | |
], | |
"name": "rawFulfillRandomness", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "roller", | |
"type": "address" | |
} | |
], | |
"name": "rollDice", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "fee", | |
"type": "uint256" | |
} | |
], | |
"name": "setFee", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "keyHash", | |
"type": "bytes32" | |
} | |
], | |
"name": "setKeyHash", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
} | |
], | |
"name": "transferOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "value", | |
"type": "uint256" | |
} | |
], | |
"name": "withdrawLINK", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"compiler": { | |
"version": "0.8.7+commit.e28d00a7" | |
}, | |
"language": "Solidity", | |
"output": { | |
"abi": [ | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "vrfCoordinator", | |
"type": "address" | |
}, | |
{ | |
"internalType": "address", | |
"name": "link", | |
"type": "address" | |
}, | |
{ | |
"internalType": "bytes32", | |
"name": "keyHash", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "fee", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "uint256", | |
"name": "result", | |
"type": "uint256" | |
} | |
], | |
"name": "DiceLanded", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "roller", | |
"type": "address" | |
} | |
], | |
"name": "DiceRolled", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "from", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
} | |
], | |
"name": "OwnershipTransferRequested", | |
"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" | |
}, | |
{ | |
"inputs": [], | |
"name": "acceptOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "fee", | |
"outputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "player", | |
"type": "address" | |
} | |
], | |
"name": "house", | |
"outputs": [ | |
{ | |
"internalType": "string", | |
"name": "", | |
"type": "string" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "keyHash", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"name": "owner", | |
"outputs": [ | |
{ | |
"internalType": "address", | |
"name": "", | |
"type": "address" | |
} | |
], | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "randomness", | |
"type": "uint256" | |
} | |
], | |
"name": "rawFulfillRandomness", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "roller", | |
"type": "address" | |
} | |
], | |
"name": "rollDice", | |
"outputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "requestId", | |
"type": "bytes32" | |
} | |
], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "uint256", | |
"name": "fee", | |
"type": "uint256" | |
} | |
], | |
"name": "setFee", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "bytes32", | |
"name": "keyHash", | |
"type": "bytes32" | |
} | |
], | |
"name": "setKeyHash", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
} | |
], | |
"name": "transferOwnership", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"inputs": [ | |
{ | |
"internalType": "address", | |
"name": "to", | |
"type": "address" | |
}, | |
{ | |
"internalType": "uint256", | |
"name": "value", | |
"type": "uint256" | |
} | |
], | |
"name": "withdrawLINK", | |
"outputs": [], | |
"stateMutability": "nonpayable", | |
"type": "function" | |
} | |
], | |
"devdoc": { | |
"details": "This is only an example implementation and not necessarily suitable for mainnet.", | |
"kind": "dev", | |
"methods": { | |
"constructor": { | |
"details": "NETWORK: KOVANChainlink VRF Coordinator address: 0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9LINK token address: 0xa36085F69e2889c224210F603D836748e7dC0088Key Hash: 0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4Fee: 0.1 LINK (100000000000000000)", | |
"params": { | |
"fee": "uint256 fee to pay the VRF oracle", | |
"keyHash": "bytes32 representing the hash of the VRF job", | |
"link": "address of the LINK token", | |
"vrfCoordinator": "address of the VRF Coordinator" | |
} | |
}, | |
"fee()": { | |
"returns": { | |
"_0": "uint256" | |
} | |
}, | |
"house(address)": { | |
"params": { | |
"player": "address" | |
}, | |
"returns": { | |
"_0": "house as a string" | |
} | |
}, | |
"keyHash()": { | |
"returns": { | |
"_0": "bytes32" | |
} | |
}, | |
"rollDice(address)": { | |
"details": "Warning: if the VRF response is delayed, avoid calling requestRandomness repeatedly as that would give miners/VRF operators latitude about which VRF response arrives first.You must review your implementation details with extreme care.", | |
"params": { | |
"roller": "address of the roller" | |
} | |
}, | |
"setFee(uint256)": { | |
"params": { | |
"fee": "uint256" | |
} | |
}, | |
"setKeyHash(bytes32)": { | |
"params": { | |
"keyHash": "bytes32" | |
} | |
}, | |
"withdrawLINK(address,uint256)": { | |
"details": "this is an example only, and in a real contract withdrawals should happen according to the established withdrawal pattern: https://docs.soliditylang.org/en/v0.4.24/common-patterns.html#withdrawal-from-contracts", | |
"params": { | |
"to": "the address to withdraw LINK to", | |
"value": "the amount of LINK to withdraw" | |
} | |
} | |
}, | |
"version": 1 | |
}, | |
"userdoc": { | |
"kind": "user", | |
"methods": { | |
"acceptOwnership()": { | |
"notice": "Allows an ownership transfer to be completed by the recipient." | |
}, | |
"constructor": { | |
"notice": "Constructor inherits VRFConsumerBase" | |
}, | |
"fee()": { | |
"notice": "Get the current fee" | |
}, | |
"house(address)": { | |
"notice": "Get the house assigned to the player once the address has rolled" | |
}, | |
"keyHash()": { | |
"notice": "Get the current key hash" | |
}, | |
"owner()": { | |
"notice": "Get the current owner" | |
}, | |
"rollDice(address)": { | |
"notice": "Requests randomness" | |
}, | |
"setFee(uint256)": { | |
"notice": "Set the oracle fee for requesting randomness" | |
}, | |
"setKeyHash(bytes32)": { | |
"notice": "Set the key hash for the oracle" | |
}, | |
"transferOwnership(address)": { | |
"notice": "Allows an owner to begin transferring ownership to a new address, pending." | |
}, | |
"withdrawLINK(address,uint256)": { | |
"notice": "Withdraw LINK from this contract." | |
} | |
}, | |
"notice": "A Chainlink VRF consumer which uses randomness to mimic the rolling of a 20 sided die", | |
"version": 1 | |
} | |
}, | |
"settings": { | |
"compilationTarget": { | |
"docs.chain.link/samples/VRF/VRFD20.sol": "VRFD20" | |
}, | |
"evmVersion": "london", | |
"libraries": {}, | |
"metadata": { | |
"bytecodeHash": "ipfs" | |
}, | |
"optimizer": { | |
"enabled": false, | |
"runs": 200 | |
}, | |
"remappings": [] | |
}, | |
"sources": { | |
"@chainlink/contracts/src/v0.8/ConfirmedOwner.sol": { | |
"keccak256": "0x9a8f38440b774b476be536dace40dc7e340d5e1e454820acdb2159a81d607b7b", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://13a4d5767257a339d17dd19bbb817aaa16c50213ca2e1f9c6c6fefc8807bcc3d", | |
"dweb:/ipfs/QmdbmphAE8QcvZynncmUNP4Yy7nxeg6ZMUmxj2YW9mCJ3p" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/ConfirmedOwnerWithProposal.sol": { | |
"keccak256": "0x5a3b1b10d179a3de75603e42be97a07c03100e45bc6ed1b7ff0771a67a006412", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://5cb3aeff7ef264e32c1e5823c5999fc73c7c0232f616aa3c34f3dd1173b0e88b", | |
"dweb:/ipfs/QmRcpxmeL1ecmGnVQQVT5ftB4FENJUwc9c2SE7adkjRhSr" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/VRFConsumerBase.sol": { | |
"keccak256": "0x991e49ee47043d6667887d7ed6ab5a0f8e4e5550f92b09b0d75c1fb1a473cd8d", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://a688c48fa681a7958d5cbb4e1845290ae317e2dfa1a059faae44c69d83409414", | |
"dweb:/ipfs/Qmb5Gpjya5VJ9LnwkEBfMr5DtDH462VBjXcA6uAU2f1Vj9" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/VRFRequestIDBase.sol": { | |
"keccak256": "0x7c8dad07e6c6c9269d97fd1191ccf9c0f0068683f1f88003e688eef9373de0d9", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://1d88c83a359c70f6b2e2e05d8f7611cce4a3d316a65e5175e14bcf9a6ced98af", | |
"dweb:/ipfs/QmeH3BEuVvaaQsz7sN5myEnFLoabTG4j85vS9Z6rfJkads" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol": { | |
"keccak256": "0x50528c237386c55ff122d047f91b32be7abe24e9dfdc609de21cd605aae83b9a", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://92037bd13b34432f9377cb205c0039bd0724af66ea605598db31d4ccd33f879f", | |
"dweb:/ipfs/QmdH6Ef5PZgcPrJuWboLX5MhmezzTFniZCwJ6fk2tYVua4" | |
] | |
}, | |
"@chainlink/contracts/src/v0.8/interfaces/OwnableInterface.sol": { | |
"keccak256": "0x8096e086e6e1820c5ce956f51c64a8327cad5a015e9cbbd3989682adc9e83aa5", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://6339b20e60b808b4c6bfc2bb3bca353b01315cf16c3b8415e42f5e565e199ec4", | |
"dweb:/ipfs/QmQqMMg3r728rj9AEjKUGeTanpXSs49RCcQUjHQxYGzRfE" | |
] | |
}, | |
"docs.chain.link/samples/VRF/VRFD20.sol": { | |
"keccak256": "0xfd5aeb85c9f13d1ae46786144886dde2fe896b0220e80ca4bc734a8ffc7a061d", | |
"license": "MIT", | |
"urls": [ | |
"bzz-raw://9453723dd975810d989ed164d5800ec8dd53a7be23e2f28486b471a8a9da8bef", | |
"dweb:/ipfs/QmYGAeLKkyrAbfnTSzV1PvnbxDwKrTgUMCL8eT45sBwvZn" | |
] | |
} | |
}, | |
"version": 1 | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity ^0.8.7; | |
import "@chainlink/contracts/src/v0.8/VRFConsumerBase.sol"; | |
/** | |
* THIS IS AN EXAMPLE CONTRACT WHICH USES HARDCODED VALUES FOR CLARITY. | |
* PLEASE DO NOT USE THIS CODE IN PRODUCTION. | |
*/ | |
contract RandomNumberConsumer is VRFConsumerBase { | |
bytes32 internal keyHash; | |
uint256 internal fee; | |
uint256 public randomResult; | |
/** | |
* Constructor inherits VRFConsumerBase | |
* | |
* Network: Kovan | |
* Chainlink VRF Coordinator address: 0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9 | |
* LINK token address: 0xa36085F69e2889c224210F603D836748e7dC0088 | |
* Key Hash: 0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4 | |
*/ | |
constructor() | |
VRFConsumerBase( | |
0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9, // VRF Coordinator | |
0xa36085F69e2889c224210F603D836748e7dC0088 // LINK Token | |
) | |
{ | |
keyHash = 0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4; | |
fee = 0.1 * 10 ** 18; // 0.1 LINK (Varies by network) | |
} | |
/** | |
* Requests randomness | |
*/ | |
function getRandomNumber() public returns (bytes32 requestId) { | |
require(LINK.balanceOf(address(this)) >= fee, "Not enough LINK - fill contract with faucet"); | |
return requestRandomness(keyHash, fee); | |
} | |
/** | |
* Callback function used by VRF Coordinator | |
*/ | |
function fulfillRandomness(bytes32 requestId, uint256 randomness) internal override { | |
randomResult = randomness; | |
} | |
function expand(uint256 randomValue, uint256 n) public pure returns (uint256[] memory expandedValues) { | |
expandedValues = new uint256[](n); | |
for (uint256 i = 0; i < n; i++) { | |
expandedValues[i] = uint256(keccak256(abi.encode(randomValue, i))); | |
} | |
return expandedValues; | |
} | |
// function withdrawLink() external {} - Implement a withdraw function to avoid locking your LINK in the contract | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// SPDX-License-Identifier: MIT | |
pragma solidity 0.8.7; | |
import "@chainlink/contracts/src/v0.8/VRFConsumerBase.sol"; | |
import "@chainlink/contracts/src/v0.8/ConfirmedOwner.sol"; | |
/** | |
* @notice A Chainlink VRF consumer which uses randomness to mimic the rolling | |
* of a 20 sided die | |
* @dev This is only an example implementation and not necessarily suitable for mainnet. | |
*/ | |
contract VRFD20 is VRFConsumerBase, ConfirmedOwner(msg.sender) { | |
uint256 private constant ROLL_IN_PROGRESS = 42; | |
bytes32 private s_keyHash; | |
uint256 private s_fee; | |
mapping(bytes32 => address) private s_rollers; | |
mapping(address => uint256) private s_results; | |
event DiceRolled(bytes32 indexed requestId, address indexed roller); | |
event DiceLanded(bytes32 indexed requestId, uint256 indexed result); | |
/** | |
* @notice Constructor inherits VRFConsumerBase | |
* | |
* @dev NETWORK: KOVAN | |
* @dev Chainlink VRF Coordinator address: 0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9 | |
* @dev LINK token address: 0xa36085F69e2889c224210F603D836748e7dC0088 | |
* @dev Key Hash: 0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4 | |
* @dev Fee: 0.1 LINK (100000000000000000) | |
* | |
* @param vrfCoordinator address of the VRF Coordinator | |
* @param link address of the LINK token | |
* @param keyHash bytes32 representing the hash of the VRF job | |
* @param fee uint256 fee to pay the VRF oracle | |
*/ | |
constructor(address vrfCoordinator, address link, bytes32 keyHash, uint256 fee) | |
VRFConsumerBase(vrfCoordinator, link) | |
{ | |
s_keyHash = keyHash; | |
s_fee = fee; | |
} | |
/** | |
* @notice Requests randomness | |
* @dev Warning: if the VRF response is delayed, avoid calling requestRandomness repeatedly | |
* as that would give miners/VRF operators latitude about which VRF response arrives first. | |
* @dev You must review your implementation details with extreme care. | |
* | |
* @param roller address of the roller | |
*/ | |
function rollDice(address roller) public onlyOwner returns (bytes32 requestId) { | |
require(LINK.balanceOf(address(this)) >= s_fee, "Not enough LINK to pay fee"); | |
require(s_results[roller] == 0, "Already rolled"); | |
requestId = requestRandomness(s_keyHash, s_fee); | |
s_rollers[requestId] = roller; | |
s_results[roller] = ROLL_IN_PROGRESS; | |
emit DiceRolled(requestId, roller); | |
} | |
/** | |
* @notice Callback function used by VRF Coordinator to return the random number | |
* to this contract. | |
* @dev Some action on the contract state should be taken here, like storing the result. | |
* @dev WARNING: take care to avoid having multiple VRF requests in flight if their order of arrival would result | |
* in contract states with different outcomes. Otherwise miners or the VRF operator would could take advantage | |
* by controlling the order. | |
* @dev The VRF Coordinator will only send this function verified responses, and the parent VRFConsumerBase | |
* contract ensures that this method only receives randomness from the designated VRFCoordinator. | |
* | |
* @param requestId bytes32 | |
* @param randomness The random result returned by the oracle | |
*/ | |
function fulfillRandomness(bytes32 requestId, uint256 randomness) internal override { | |
uint256 d20Value = (randomness % 20) + 1; | |
s_results[s_rollers[requestId]] = d20Value; | |
emit DiceLanded(requestId, d20Value); | |
} | |
/** | |
* @notice Get the house assigned to the player once the address has rolled | |
* @param player address | |
* @return house as a string | |
*/ | |
function house(address player) public view returns (string memory) { | |
require(s_results[player] != 0, "Dice not rolled"); | |
require(s_results[player] != ROLL_IN_PROGRESS, "Roll in progress"); | |
return getHouseName(s_results[player]); | |
} | |
/** | |
* @notice Withdraw LINK from this contract. | |
* @dev this is an example only, and in a real contract withdrawals should | |
* happen according to the established withdrawal pattern: | |
* https://docs.soliditylang.org/en/v0.4.24/common-patterns.html#withdrawal-from-contracts | |
* @param to the address to withdraw LINK to | |
* @param value the amount of LINK to withdraw | |
*/ | |
function withdrawLINK(address to, uint256 value) public onlyOwner { | |
require(LINK.transfer(to, value), "Not enough LINK"); | |
} | |
/** | |
* @notice Set the key hash for the oracle | |
* | |
* @param keyHash bytes32 | |
*/ | |
function setKeyHash(bytes32 keyHash) public onlyOwner { | |
s_keyHash = keyHash; | |
} | |
/** | |
* @notice Get the current key hash | |
* | |
* @return bytes32 | |
*/ | |
function keyHash() public view returns (bytes32) { | |
return s_keyHash; | |
} | |
/** | |
* @notice Set the oracle fee for requesting randomness | |
* | |
* @param fee uint256 | |
*/ | |
function setFee(uint256 fee) public onlyOwner { | |
s_fee = fee; | |
} | |
/** | |
* @notice Get the current fee | |
* | |
* @return uint256 | |
*/ | |
function fee() public view returns (uint256) { | |
return s_fee; | |
} | |
/** | |
* @notice Get the house namne from the id | |
* @param id uint256 | |
* @return house name string | |
*/ | |
function getHouseName(uint256 id) private pure returns (string memory) { | |
string[20] memory houseNames = [ | |
"Targaryen", | |
"Lannister", | |
"Stark", | |
"Tyrell", | |
"Baratheon", | |
"Martell", | |
"Tully", | |
"Bolton", | |
"Greyjoy", | |
"Arryn", | |
"Frey", | |
"Mormont", | |
"Tarley", | |
"Dayne", | |
"Umber", | |
"Valeryon", | |
"Manderly", | |
"Clegane", | |
"Glover", | |
"Karstark" | |
]; | |
return houseNames[id - 1]; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment