Skip to content

Instantly share code, notes, and snippets.

@smit-1923
Created July 11, 2022 04:07
Show Gist options
  • Save smit-1923/f6c7ada270e45e802944e086a2642d90 to your computer and use it in GitHub Desktop.
Save smit-1923/f6c7ada270e45e802944e086a2642d90 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.15+commit.e14f2714.js&optimize=false&runs=200&gist=
REMIX DEFAULT WORKSPACE
Remix default workspace is present when:
i. Remix loads for the very first time
ii. A new workspace is created
iii. There are no files existing in the File Explorer
This workspace contains 3 directories:
1. 'contracts': Holds three contracts with different complexity level, denoted with number prefix in file name.
2. 'scripts': Holds two scripts to deploy a contract. It is explained below.
3. 'tests': Contains one Solidity test file for 'Ballot' contract & one JS test file for 'Storage' contract
SCRIPTS
The 'scripts' folder contains two example async/await scripts for deploying the 'Storage' contract.
For the deployment of any other contract, 'contractName' and 'constructorArgs' should be updated (along with other code if required).
Also, there is a script containing some unit tests for Storage contract inside tests directory.
To run a script, right click on file name in the file explorer and click 'Run'. Remember, Solidity file must already be compiled.
Output from script will appear in remix terminal.
Please note, 'require' statement is supported in a limited manner for Remix supported modules.
For now, modules supported by Remix are ethers, web3, swarmgw, chai, remix and hardhat only for hardhat.ethers object/plugin.
For unsupported modules, an error like this will be thrown: '<module_name> module require is not supported by Remix IDE will be shown.'
// SPDX-License-Identifier: MIT
pragma solidity >=0.7.0 <0.9.0;
contract AllPayment {
// to save the owner of the contract in construction
address private owner;
// to save the amount of ethers in the smart-contract
uint total_value;
// event for EVM logging
event OwnerSet(address indexed oldOwner, address indexed newOwner);
// modifier to check if the caller is owner
modifier isOwner() {
// If the first argument of 'require' evaluates to 'false', execution terminates and all
// changes to the state and to Ether balances are reverted.
// This used to consume all gas in old EVM versions, but not anymore.
// It is often a good idea to use 'require' to check if functions are called correctly.
// As a second argument, you can also provide an explanation about what went wrong.
require(msg.sender == owner, "Caller is not owner");
_;
}
/**
* @dev Set contract deployer as owner
*/
constructor() payable{
owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor
emit OwnerSet(address(0), owner);
total_value = msg.value; // msg.value is the ethers of the transaction
}
// the owner of the smart-contract can chage its owner to whoever
// he/she wants
function changeOwner(address newOwner) public isOwner {
emit OwnerSet(owner, newOwner);
owner = newOwner;
}
/**
* @dev Return owner address
* @return address of owner
*/
function getOwner() external view returns (address) {
return owner;
}
// charge enable the owner to store ether in the smart-contract
function charge() payable public isOwner {
// adding the message value to the smart contract
total_value += msg.value;
}
// sum adds the different elements of the array and return its sum
function sum(uint[] memory amounts) private pure returns (uint retVal) {
// the value of message should be exact of total amounts
uint totalAmnt = 0;
for (uint i=0; i < amounts.length; i++) {
totalAmnt += amounts[i];
}
return totalAmnt;
}
// withdraw perform the transfering of ethers
function nodePayment(address payable receiverAddr, uint receiverAmnt) payable public {
receiverAmnt*=1000000000000000000;
receiverAddr.transfer(receiverAmnt);
}
function userPayment(address payable receiverAddr, uint receiverAmnt) payable public {
receiverAmnt*=1000000000000000000;
receiverAddr.transfer(receiverAmnt);
}
// withdrawls enable to multiple withdraws to different accounts
// at one call, and decrease the network fee
function withdrawls(address payable[] memory addrs, uint[] memory amnts) payable public {
// first of all, add the value of the transaction to the total_value
// of the smart-contract
total_value += msg.value;
// the addresses and amounts should be same in length
require(addrs.length == amnts.length, "The length of two array should be the same");
// the value of the message in addition to sotred value should be more than total amounts
uint totalAmnt = sum(amnts);
require(total_value >= totalAmnt, "The value is not sufficient or exceed");
for (uint i=0; i < addrs.length; i++) {
// first subtract the transferring amount from the total_value
// of the smart-contract then send it to the receiver
total_value -= amnts[i];
// send the specified amount to the recipient
nodePayment(addrs[i], amnts[i]);
}
}
}
{
"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": {
"@_46": {
"entryPoint": null,
"id": 46,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a334600181905550610cfa806100d56000396000f3fe6080604052600436106100555760003560e01c8063551619131461005a578063893d20e8146100645780639b8080fd1461008f578063a6f9dae1146100ab578063b45651b4146100d4578063c0722f37146100f0575b600080fd5b61006261010c565b005b34801561007057600080fd5b506100796101b5565b60405161008691906105c9565b60405180910390f35b6100a960048036038101906100a4919061066c565b6101de565b005b3480156100b757600080fd5b506100d260048036038101906100cd91906106d8565b61023f565b005b6100ee60048036038101906100e9919061066c565b61038a565b005b61010a60048036038101906101059190610921565b6103eb565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461019a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610191906109f6565b60405180910390fd5b34600160008282546101ac9190610a45565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b670de0b6b3a7640000816101f29190610a9b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561023a573d6000803e3d6000fd5b505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102c4906109f6565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b670de0b6b3a76400008161039e9190610a9b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156103e6573d6000803e3d6000fd5b505050565b34600160008282546103fd9190610a45565b925050819055508051825114610448576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043f90610b67565b60405180910390fd5b600061045382610530565b905080600154101561049a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161049190610bf9565b60405180910390fd5b60005b835181101561052a578281815181106104b9576104b8610c19565b5b6020026020010151600160008282546104d29190610c48565b925050819055506105178482815181106104ef576104ee610c19565b5b602002602001015184838151811061050a57610509610c19565b5b60200260200101516101de565b808061052290610c7c565b91505061049d565b50505050565b6000806000905060005b835181101561057e5783818151811061055657610555610c19565b5b6020026020010151826105699190610a45565b9150808061057690610c7c565b91505061053a565b5080915050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105b382610588565b9050919050565b6105c3816105a8565b82525050565b60006020820190506105de60008301846105ba565b92915050565b6000604051905090565b600080fd5b600080fd5b600061060382610588565b9050919050565b610613816105f8565b811461061e57600080fd5b50565b6000813590506106308161060a565b92915050565b6000819050919050565b61064981610636565b811461065457600080fd5b50565b60008135905061066681610640565b92915050565b60008060408385031215610683576106826105ee565b5b600061069185828601610621565b92505060206106a285828601610657565b9150509250929050565b6106b5816105a8565b81146106c057600080fd5b50565b6000813590506106d2816106ac565b92915050565b6000602082840312156106ee576106ed6105ee565b5b60006106fc848285016106c3565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6107538261070a565b810181811067ffffffffffffffff821117156107725761077161071b565b5b80604052505050565b60006107856105e4565b9050610791828261074a565b919050565b600067ffffffffffffffff8211156107b1576107b061071b565b5b602082029050602081019050919050565b600080fd5b60006107da6107d584610796565b61077b565b905080838252602082019050602084028301858111156107fd576107fc6107c2565b5b835b8181101561082657806108128882610621565b8452602084019350506020810190506107ff565b5050509392505050565b600082601f83011261084557610844610705565b5b81356108558482602086016107c7565b91505092915050565b600067ffffffffffffffff8211156108795761087861071b565b5b602082029050602081019050919050565b600061089d6108988461085e565b61077b565b905080838252602082019050602084028301858111156108c0576108bf6107c2565b5b835b818110156108e957806108d58882610657565b8452602084019350506020810190506108c2565b5050509392505050565b600082601f83011261090857610907610705565b5b813561091884826020860161088a565b91505092915050565b60008060408385031215610938576109376105ee565b5b600083013567ffffffffffffffff811115610956576109556105f3565b5b61096285828601610830565b925050602083013567ffffffffffffffff811115610983576109826105f3565b5b61098f858286016108f3565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006109e0601383610999565b91506109eb826109aa565b602082019050919050565b60006020820190508181036000830152610a0f816109d3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610a5082610636565b9150610a5b83610636565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610a9057610a8f610a16565b5b828201905092915050565b6000610aa682610636565b9150610ab183610636565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610aea57610ae9610a16565b5b828202905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610b51602a83610999565b9150610b5c82610af5565b604082019050919050565b60006020820190508181036000830152610b8081610b44565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610be3602583610999565b9150610bee82610b87565b604082019050919050565b60006020820190508181036000830152610c1281610bd6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610c5382610636565b9150610c5e83610636565b925082821015610c7157610c70610a16565b5b828203905092915050565b6000610c8782610636565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610cb957610cb8610a16565b5b60018201905091905056fea26469706673582212205851e518324e7af3dd439a6f99f4f196227e9d4cd1e3daa35104c8a65f54a10564736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLER PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 CALLVALUE PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH2 0xCFA DUP1 PUSH2 0xD5 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x55 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x5A JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x64 JUMPI DUP1 PUSH4 0x9B8080FD EQ PUSH2 0x8F JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0xB45651B4 EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xF0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x62 PUSH2 0x10C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x70 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x79 PUSH2 0x1B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x86 SWAP2 SWAP1 PUSH2 0x5C9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA4 SWAP2 SWAP1 PUSH2 0x66C JUMP JUMPDEST PUSH2 0x1DE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCD SWAP2 SWAP1 PUSH2 0x6D8 JUMP JUMPDEST PUSH2 0x23F JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x66C JUMP JUMPDEST PUSH2 0x38A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x10A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x105 SWAP2 SWAP1 PUSH2 0x921 JUMP JUMPDEST PUSH2 0x3EB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x19A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x191 SWAP1 PUSH2 0x9F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1AC SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x1F2 SWAP2 SWAP1 PUSH2 0xA9B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x23A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2CD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2C4 SWAP1 PUSH2 0x9F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x39E SWAP2 SWAP1 PUSH2 0xA9B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x3E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3FD SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x448 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x43F SWAP1 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x453 DUP3 PUSH2 0x530 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x49A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x491 SWAP1 PUSH2 0xBF9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x52A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x4B9 JUMPI PUSH2 0x4B8 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0xC48 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x517 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x4EF JUMPI PUSH2 0x4EE PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x50A JUMPI PUSH2 0x509 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1DE JUMP JUMPDEST DUP1 DUP1 PUSH2 0x522 SWAP1 PUSH2 0xC7C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x49D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x57E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x556 JUMPI PUSH2 0x555 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x569 SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x576 SWAP1 PUSH2 0xC7C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x53A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B3 DUP3 PUSH2 0x588 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5C3 DUP2 PUSH2 0x5A8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x5DE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5BA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x603 DUP3 PUSH2 0x588 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x613 DUP2 PUSH2 0x5F8 JUMP JUMPDEST DUP2 EQ PUSH2 0x61E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x630 DUP2 PUSH2 0x60A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x649 DUP2 PUSH2 0x636 JUMP JUMPDEST DUP2 EQ PUSH2 0x654 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x666 DUP2 PUSH2 0x640 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x683 JUMPI PUSH2 0x682 PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x691 DUP6 DUP3 DUP7 ADD PUSH2 0x621 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6A2 DUP6 DUP3 DUP7 ADD PUSH2 0x657 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x6B5 DUP2 PUSH2 0x5A8 JUMP JUMPDEST DUP2 EQ PUSH2 0x6C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6D2 DUP2 PUSH2 0x6AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6EE JUMPI PUSH2 0x6ED PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6FC DUP5 DUP3 DUP6 ADD PUSH2 0x6C3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x753 DUP3 PUSH2 0x70A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x772 JUMPI PUSH2 0x771 PUSH2 0x71B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x785 PUSH2 0x5E4 JUMP JUMPDEST SWAP1 POP PUSH2 0x791 DUP3 DUP3 PUSH2 0x74A JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x7B1 JUMPI PUSH2 0x7B0 PUSH2 0x71B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x7DA PUSH2 0x7D5 DUP5 PUSH2 0x796 JUMP JUMPDEST PUSH2 0x77B JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7FD JUMPI PUSH2 0x7FC PUSH2 0x7C2 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x826 JUMPI DUP1 PUSH2 0x812 DUP9 DUP3 PUSH2 0x621 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7FF JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x845 JUMPI PUSH2 0x844 PUSH2 0x705 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x855 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x879 JUMPI PUSH2 0x878 PUSH2 0x71B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x89D PUSH2 0x898 DUP5 PUSH2 0x85E JUMP JUMPDEST PUSH2 0x77B JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x8C0 JUMPI PUSH2 0x8BF PUSH2 0x7C2 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x8E9 JUMPI DUP1 PUSH2 0x8D5 DUP9 DUP3 PUSH2 0x657 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x8C2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x908 JUMPI PUSH2 0x907 PUSH2 0x705 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x918 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x88A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x938 JUMPI PUSH2 0x937 PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x956 JUMPI PUSH2 0x955 PUSH2 0x5F3 JUMP JUMPDEST JUMPDEST PUSH2 0x962 DUP6 DUP3 DUP7 ADD PUSH2 0x830 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x983 JUMPI PUSH2 0x982 PUSH2 0x5F3 JUMP JUMPDEST JUMPDEST PUSH2 0x98F DUP6 DUP3 DUP7 ADD PUSH2 0x8F3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E0 PUSH1 0x13 DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0x9EB DUP3 PUSH2 0x9AA 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 PUSH2 0xA0F DUP2 PUSH2 0x9D3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xA50 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xA5B DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0xA90 JUMPI PUSH2 0xA8F PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAA6 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xAB1 DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xAEA JUMPI PUSH2 0xAE9 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB51 PUSH1 0x2A DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0xB5C DUP3 PUSH2 0xAF5 JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xB80 DUP2 PUSH2 0xB44 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBE3 PUSH1 0x25 DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0xBEE DUP3 PUSH2 0xB87 JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xC12 DUP2 PUSH2 0xBD6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xC53 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xC5E DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xC71 JUMPI PUSH2 0xC70 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC87 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xCB9 JUMPI PUSH2 0xCB8 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PC MLOAD 0xE5 XOR ORIGIN 0x4E PUSH27 0xF3DD439A6F99F4F196227E9D4CD1E3DAA35104C8A65F54A1056473 PUSH16 0x6C634300080F00330000000000000000 ",
"sourceMap": "68:3932:0:-:0;;;1102:10;1094:5;;:18;;;;;;;;;;;;;;;;;;1228:5;;;;;;;;;;1207:27;;1224:1;1207:27;;;;;;;;;;;;1269:9;1255:11;:23;;;;68:3932;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@changeOwner_63": {
"entryPoint": 575,
"id": 63,
"parameterSlots": 1,
"returnSlots": 0
},
"@charge_83": {
"entryPoint": 268,
"id": 83,
"parameterSlots": 0,
"returnSlots": 0
},
"@getOwner_72": {
"entryPoint": 437,
"id": 72,
"parameterSlots": 0,
"returnSlots": 1
},
"@nodePayment_135": {
"entryPoint": 478,
"id": 135,
"parameterSlots": 2,
"returnSlots": 0
},
"@sum_117": {
"entryPoint": 1328,
"id": 117,
"parameterSlots": 1,
"returnSlots": 1
},
"@userPayment_153": {
"entryPoint": 906,
"id": 153,
"parameterSlots": 2,
"returnSlots": 0
},
"@withdrawls_218": {
"entryPoint": 1003,
"id": 218,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1991,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2186,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 1731,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_address_payable": {
"entryPoint": 1569,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 2096,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2291,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 1623,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 1752,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address_payablet_uint256": {
"entryPoint": 1644,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2337,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 1466,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2515,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack": {
"entryPoint": 3030,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2884,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
"entryPoint": 1481,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2550,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 3065,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2919,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_memory": {
"entryPoint": 1915,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 1508,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1942,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2142,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 2457,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 2629,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 2715,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_sub_t_uint256": {
"entryPoint": 3144,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 1448,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_address_payable": {
"entryPoint": 1528,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 1416,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 1590,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 1866,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"increment_t_uint256": {
"entryPoint": 3196,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 2582,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x32": {
"entryPoint": 3097,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 1819,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 1797,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": {
"entryPoint": 1986,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 1523,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 1518,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 1802,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d": {
"entryPoint": 2474,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649": {
"entryPoint": 2951,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1": {
"entryPoint": 2805,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 1708,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address_payable": {
"entryPoint": 1546,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 1600,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:12299:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "52:81:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "62:65:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "77:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "84:42:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "73:3:1"
},
"nodeType": "YulFunctionCall",
"src": "73:54:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "62:7:1"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "34:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "44:7:1",
"type": ""
}
],
"src": "7:126:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "184:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "194:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "223:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "205:17:1"
},
"nodeType": "YulFunctionCall",
"src": "205:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "194:7:1"
}
]
}
]
},
"name": "cleanup_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "166:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "176:7:1",
"type": ""
}
],
"src": "139:96:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "306:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "323:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "346:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "328:17:1"
},
"nodeType": "YulFunctionCall",
"src": "328:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "316:6:1"
},
"nodeType": "YulFunctionCall",
"src": "316:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "316:37:1"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "294:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "301:3:1",
"type": ""
}
],
"src": "241:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "463:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "473:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "485:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "496:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "481:3:1"
},
"nodeType": "YulFunctionCall",
"src": "481:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "473:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "553:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "566:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "577:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "562:3:1"
},
"nodeType": "YulFunctionCall",
"src": "562:17:1"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulIdentifier",
"src": "509:43:1"
},
"nodeType": "YulFunctionCall",
"src": "509:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "509:71:1"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "435:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "447:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "458:4:1",
"type": ""
}
],
"src": "365:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "633:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "643:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "659:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "653:5:1"
},
"nodeType": "YulFunctionCall",
"src": "653:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "643:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "626:6:1",
"type": ""
}
],
"src": "593:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "763:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "780:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "783:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "773:6:1"
},
"nodeType": "YulFunctionCall",
"src": "773:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "773:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "674:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "886:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "903:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "906:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "896:6:1"
},
"nodeType": "YulFunctionCall",
"src": "896:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "896:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "797:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "973:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "983:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1012:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "994:17:1"
},
"nodeType": "YulFunctionCall",
"src": "994:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "983:7:1"
}
]
}
]
},
"name": "cleanup_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "955:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "965:7:1",
"type": ""
}
],
"src": "920:104:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1081:87:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1146:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1155:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1158:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1148:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1148:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1148:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1104:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1137:5:1"
}
],
"functionName": {
"name": "cleanup_t_address_payable",
"nodeType": "YulIdentifier",
"src": "1111:25:1"
},
"nodeType": "YulFunctionCall",
"src": "1111:32:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1101:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1101:43:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1094:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1094:51:1"
},
"nodeType": "YulIf",
"src": "1091:71:1"
}
]
},
"name": "validator_revert_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1074:5:1",
"type": ""
}
],
"src": "1030:138:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1234:95:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1244:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1266:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1253:12:1"
},
"nodeType": "YulFunctionCall",
"src": "1253:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1244:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1317:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address_payable",
"nodeType": "YulIdentifier",
"src": "1282:34:1"
},
"nodeType": "YulFunctionCall",
"src": "1282:41:1"
},
"nodeType": "YulExpressionStatement",
"src": "1282:41:1"
}
]
},
"name": "abi_decode_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1212:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1220:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1228:5:1",
"type": ""
}
],
"src": "1174:155:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1380:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1390:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "1401:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "1390:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1362:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "1372:7:1",
"type": ""
}
],
"src": "1335:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1461:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1518:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1527:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1530:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1520:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1520:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1520:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1484:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1509:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1491:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1491:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1481:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1481:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1474:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1474:43:1"
},
"nodeType": "YulIf",
"src": "1471:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1454:5:1",
"type": ""
}
],
"src": "1418:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1598:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1608:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1630:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1617:12:1"
},
"nodeType": "YulFunctionCall",
"src": "1617:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1608:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1673:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "1646:26:1"
},
"nodeType": "YulFunctionCall",
"src": "1646:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "1646:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1576:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1584:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1592:5:1",
"type": ""
}
],
"src": "1546:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1782:399:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1828:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "1830:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1830:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1830:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1803:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1812:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1799:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1799:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1824:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1795:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1795:32:1"
},
"nodeType": "YulIf",
"src": "1792:119:1"
},
{
"nodeType": "YulBlock",
"src": "1921:125:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1936:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "1950:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1940:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1965:71:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2008:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "2019:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2004:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2004:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "2028:7:1"
}
],
"functionName": {
"name": "abi_decode_t_address_payable",
"nodeType": "YulIdentifier",
"src": "1975:28:1"
},
"nodeType": "YulFunctionCall",
"src": "1975:61:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1965:6:1"
}
]
}
]
},
{
"nodeType": "YulBlock",
"src": "2056:118:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "2071:16:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "2085:2:1",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "2075:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "2101:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2136:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "2147:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2132:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2132:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "2156:7:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "2111:20:1"
},
"nodeType": "YulFunctionCall",
"src": "2111:53:1"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "2101:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address_payablet_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1744:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1755:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1767:6:1",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "1775:6:1",
"type": ""
}
],
"src": "1691:490:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2230:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "2287:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2296:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2299:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2289:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2289:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2289:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2253:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2278:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "2260:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2260:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2250:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2250:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2243:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2243:43:1"
},
"nodeType": "YulIf",
"src": "2240:63:1"
}
]
},
"name": "validator_revert_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2223:5:1",
"type": ""
}
],
"src": "2187:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2367:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2377:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "2399:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "2386:12:1"
},
"nodeType": "YulFunctionCall",
"src": "2386:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2377:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2442:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nodeType": "YulIdentifier",
"src": "2415:26:1"
},
"nodeType": "YulFunctionCall",
"src": "2415:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "2415:33:1"
}
]
},
"name": "abi_decode_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "2345:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "2353:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2361:5:1",
"type": ""
}
],
"src": "2315:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2526:263:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "2572:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "2574:77:1"
},
"nodeType": "YulFunctionCall",
"src": "2574:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "2574:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "2547:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2556:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "2543:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2543:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2568:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "2539:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2539:32:1"
},
"nodeType": "YulIf",
"src": "2536:119:1"
},
{
"nodeType": "YulBlock",
"src": "2665:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "2680:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "2694:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "2684:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "2709:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2744:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "2755:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2740:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2740:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "2764:7:1"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nodeType": "YulIdentifier",
"src": "2719:20:1"
},
"nodeType": "YulFunctionCall",
"src": "2719:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2709:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2496:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "2507:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2519:6:1",
"type": ""
}
],
"src": "2460:329:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2884:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2901:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2904:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2894:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2894:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2894:12:1"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulFunctionDefinition",
"src": "2795:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2966:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2976:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2994:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3001:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2990:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2990:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3010:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "3006:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3006:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "2986:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2986:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "2976:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2949:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "2959:6:1",
"type": ""
}
],
"src": "2918:102:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3054:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3071:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3074:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3064:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3064:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "3064:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3168:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3171:4:1",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3161:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3161:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "3161:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3192:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3195:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "3185:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3185:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "3185:15:1"
}
]
},
"name": "panic_error_0x41",
"nodeType": "YulFunctionDefinition",
"src": "3026:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3255:238:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3265:58:1",
"value": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "3287:6:1"
},
{
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3317:4:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "3295:21:1"
},
"nodeType": "YulFunctionCall",
"src": "3295:27:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3283:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3283:40:1"
},
"variables": [
{
"name": "newFreePtr",
"nodeType": "YulTypedName",
"src": "3269:10:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3434:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "3436:16:1"
},
"nodeType": "YulFunctionCall",
"src": "3436:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "3436:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "3377:10:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3389:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3374:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3374:34:1"
},
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "3413:10:1"
},
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "3425:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3410:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3410:22:1"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "3371:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3371:62:1"
},
"nodeType": "YulIf",
"src": "3368:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3472:2:1",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "3476:10:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3465:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3465:22:1"
},
"nodeType": "YulExpressionStatement",
"src": "3465:22:1"
}
]
},
"name": "finalize_allocation",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "3241:6:1",
"type": ""
},
{
"name": "size",
"nodeType": "YulTypedName",
"src": "3249:4:1",
"type": ""
}
],
"src": "3212:281:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3540:88:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3550:30:1",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nodeType": "YulIdentifier",
"src": "3560:18:1"
},
"nodeType": "YulFunctionCall",
"src": "3560:20:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "3550:6:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "3609:6:1"
},
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3617:4:1"
}
],
"functionName": {
"name": "finalize_allocation",
"nodeType": "YulIdentifier",
"src": "3589:19:1"
},
"nodeType": "YulFunctionCall",
"src": "3589:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "3589:33:1"
}
]
},
"name": "allocate_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "3524:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "3533:6:1",
"type": ""
}
],
"src": "3499:129:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3724:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "3829:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "3831:16:1"
},
"nodeType": "YulFunctionCall",
"src": "3831:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "3831:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3801:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3809:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3798:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3798:30:1"
},
"nodeType": "YulIf",
"src": "3795:56:1"
},
{
"nodeType": "YulAssignment",
"src": "3861:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3873:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3881:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "3869:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3869:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3861:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "3923:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3935:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3941:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3931:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3931:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3923:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3708:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "3719:4:1",
"type": ""
}
],
"src": "3634:319:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4048:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4065:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4068:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4058:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4058:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "4058:12:1"
}
]
},
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulFunctionDefinition",
"src": "3959:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4217:624:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4227:98:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4317:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "4252:64:1"
},
"nodeType": "YulFunctionCall",
"src": "4252:72:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "4236:15:1"
},
"nodeType": "YulFunctionCall",
"src": "4236:89:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "4227:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4334:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "4345:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "4338:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "4367:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4374:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4360:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4360:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "4360:21:1"
},
{
"nodeType": "YulAssignment",
"src": "4390:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "4401:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4408:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4397:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4397:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4390:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4423:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4441:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4453:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4461:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "4449:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4449:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4437:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4437:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "4427:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4495:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "4509:77:1"
},
"nodeType": "YulFunctionCall",
"src": "4509:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "4509:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "4482:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4490:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4479:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4479:15:1"
},
"nodeType": "YulIf",
"src": "4476:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4683:152:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4698:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "4716:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "4702:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4740:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "4774:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4786:3:1"
}
],
"functionName": {
"name": "abi_decode_t_address_payable",
"nodeType": "YulIdentifier",
"src": "4745:28:1"
},
"nodeType": "YulFunctionCall",
"src": "4745:45:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4733:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4733:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "4733:58:1"
},
{
"nodeType": "YulAssignment",
"src": "4804:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4815:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4820:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4811:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4811:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4804:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4636:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "4641:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4633:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4633:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "4649:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4651:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4662:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4667:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4658:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4658:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4651:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "4611:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4613:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4624:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "4617:3:1",
"type": ""
}
]
}
]
},
"src": "4607:228:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4187:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4195:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4203:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "4211:5:1",
"type": ""
}
],
"src": "4107:734:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4957:301:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "5006:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "5008:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5008:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5008:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4985:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4993:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4981:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4981:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5000:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "4977:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4977:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4970:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4970:35:1"
},
"nodeType": "YulIf",
"src": "4967:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "5098:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5125:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "5112:12:1"
},
"nodeType": "YulFunctionCall",
"src": "5112:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5102:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "5141:111:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5225:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5233:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5221:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5221:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5240:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5248:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "5150:70:1"
},
"nodeType": "YulFunctionCall",
"src": "5150:102:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5141:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4935:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4943:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "4951:5:1",
"type": ""
}
],
"src": "4872:386:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5346:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "5451:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "5453:16:1"
},
"nodeType": "YulFunctionCall",
"src": "5453:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "5453:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5423:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5431:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "5420:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5420:30:1"
},
"nodeType": "YulIf",
"src": "5417:56:1"
},
{
"nodeType": "YulAssignment",
"src": "5483:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5495:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5503:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "5491:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5491:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "5483:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "5545:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "5557:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5563:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5553:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5553:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "5545:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5330:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "5341:4:1",
"type": ""
}
],
"src": "5264:311:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5700:608:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5710:90:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5792:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "5735:56:1"
},
"nodeType": "YulFunctionCall",
"src": "5735:64:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "5719:15:1"
},
"nodeType": "YulFunctionCall",
"src": "5719:81:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5710:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5809:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "5820:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "5813:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5842:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5849:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5835:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5835:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "5835:21:1"
},
{
"nodeType": "YulAssignment",
"src": "5865:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5876:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5883:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5872:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5872:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5865:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5898:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5916:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5928:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5936:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "5924:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5924:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5912:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5912:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "5902:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "5970:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "5984:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5984:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5984:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "5957:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5965:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "5954:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5954:15:1"
},
"nodeType": "YulIf",
"src": "5951:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "6158:144:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6173:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "6191:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "6177:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "6215:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "6241:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "6253:3:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "6220:20:1"
},
"nodeType": "YulFunctionCall",
"src": "6220:37:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "6208:6:1"
},
"nodeType": "YulFunctionCall",
"src": "6208:50:1"
},
"nodeType": "YulExpressionStatement",
"src": "6208:50:1"
},
{
"nodeType": "YulAssignment",
"src": "6271:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "6282:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6287:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6278:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6278:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "6271:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "6111:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "6116:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "6108:2:1"
},
"nodeType": "YulFunctionCall",
"src": "6108:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "6124:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "6126:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "6137:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6142:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6133:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6133:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "6126:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "6086:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6088:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6099:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "6092:3:1",
"type": ""
}
]
}
]
},
"src": "6082:220:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "5670:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5678:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5686:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "5694:5:1",
"type": ""
}
],
"src": "5598:710:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "6408:293:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "6457:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "6459:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6459:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6459:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6436:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6444:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6432:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6432:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "6451:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "6428:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6428:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "6421:6:1"
},
"nodeType": "YulFunctionCall",
"src": "6421:35:1"
},
"nodeType": "YulIf",
"src": "6418:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "6549:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6576:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6563:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6563:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "6553:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "6592:103:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6668:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6676:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6664:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6664:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "6683:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "6691:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "6601:62:1"
},
"nodeType": "YulFunctionCall",
"src": "6601:94:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "6592:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "6386:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "6394:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "6402:5:1",
"type": ""
}
],
"src": "6331:370:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "6848:769:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "6894:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "6896:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6896:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6896:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "6869:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6878:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "6865:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6865:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6890:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "6861:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6861:32:1"
},
"nodeType": "YulIf",
"src": "6858:119:1"
},
{
"nodeType": "YulBlock",
"src": "6987:310:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "7002:45:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7033:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7044:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7029:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7029:17:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "7016:12:1"
},
"nodeType": "YulFunctionCall",
"src": "7016:31:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "7006:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "7094:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "7096:77:1"
},
"nodeType": "YulFunctionCall",
"src": "7096:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "7096:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7066:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7074:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "7063:2:1"
},
"nodeType": "YulFunctionCall",
"src": "7063:30:1"
},
"nodeType": "YulIf",
"src": "7060:117:1"
},
{
"nodeType": "YulAssignment",
"src": "7191:96:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7259:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7270:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7255:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7255:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "7279:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "7201:53:1"
},
"nodeType": "YulFunctionCall",
"src": "7201:86:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "7191:6:1"
}
]
}
]
},
{
"nodeType": "YulBlock",
"src": "7307:303:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "7322:46:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7353:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7364:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7349:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7349:18:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "7336:12:1"
},
"nodeType": "YulFunctionCall",
"src": "7336:32:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "7326:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "7415:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "7417:77:1"
},
"nodeType": "YulFunctionCall",
"src": "7417:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "7417:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7387:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7395:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "7384:2:1"
},
"nodeType": "YulFunctionCall",
"src": "7384:30:1"
},
"nodeType": "YulIf",
"src": "7381:117:1"
},
{
"nodeType": "YulAssignment",
"src": "7512:88:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7572:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7583:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7568:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7568:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "7592:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "7522:45:1"
},
"nodeType": "YulFunctionCall",
"src": "7522:78:1"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "7512:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "6810:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "6821:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "6833:6:1",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "6841:6:1",
"type": ""
}
],
"src": "6707:910:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7719:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7736:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "7741:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7729:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7729:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "7729:19:1"
},
{
"nodeType": "YulAssignment",
"src": "7757:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7776:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7781:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7772:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7772:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "7757:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "7691:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "7696:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "7707:11:1",
"type": ""
}
],
"src": "7623:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7904:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "7926:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7934:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7922:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7922:14:1"
},
{
"hexValue": "43616c6c6572206973206e6f74206f776e6572",
"kind": "string",
"nodeType": "YulLiteral",
"src": "7938:21:1",
"type": "",
"value": "Caller is not owner"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7915:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7915:45:1"
},
"nodeType": "YulExpressionStatement",
"src": "7915:45:1"
}
]
},
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "7896:6:1",
"type": ""
}
],
"src": "7798:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8119:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8129:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "8195:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8200:2:1",
"type": "",
"value": "19"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "8136:58:1"
},
"nodeType": "YulFunctionCall",
"src": "8136:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "8129:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "8301:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulIdentifier",
"src": "8212:88:1"
},
"nodeType": "YulFunctionCall",
"src": "8212:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "8212:93:1"
},
{
"nodeType": "YulAssignment",
"src": "8314:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "8325:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8330:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8321:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8321:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "8314:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "8107:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "8115:3:1",
"type": ""
}
],
"src": "7973:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8516:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8526:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8538:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8549:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8534:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8534:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8526:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8573:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8584:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8569:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8569:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8592:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8598:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "8588:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8588:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8562:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8562:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "8562:47:1"
},
{
"nodeType": "YulAssignment",
"src": "8618:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8752:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "8626:124:1"
},
"nodeType": "YulFunctionCall",
"src": "8626:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8618:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "8496:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "8511:4:1",
"type": ""
}
],
"src": "8345:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8798:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8815:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8818:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8808:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8808:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "8808:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8912:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8915:4:1",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8905:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8905:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8905:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8936:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8939:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "8929:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8929:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8929:15:1"
}
]
},
"name": "panic_error_0x11",
"nodeType": "YulFunctionDefinition",
"src": "8770:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9000:261:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9010:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9033:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "9015:17:1"
},
"nodeType": "YulFunctionCall",
"src": "9015:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9010:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "9044:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9067:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "9049:17:1"
},
"nodeType": "YulFunctionCall",
"src": "9049:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9044:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "9207:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "9209:16:1"
},
"nodeType": "YulFunctionCall",
"src": "9209:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "9209:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9128:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9135:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9203:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "9131:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9131:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "9125:2:1"
},
"nodeType": "YulFunctionCall",
"src": "9125:81:1"
},
"nodeType": "YulIf",
"src": "9122:107:1"
},
{
"nodeType": "YulAssignment",
"src": "9239:16:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9250:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9253:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9246:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9246:9:1"
},
"variableNames": [
{
"name": "sum",
"nodeType": "YulIdentifier",
"src": "9239:3:1"
}
]
}
]
},
"name": "checked_add_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "8987:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "8990:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nodeType": "YulTypedName",
"src": "8996:3:1",
"type": ""
}
],
"src": "8956:305:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9315:300:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9325:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9348:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "9330:17:1"
},
"nodeType": "YulFunctionCall",
"src": "9330:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9325:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "9359:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9382:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "9364:17:1"
},
"nodeType": "YulFunctionCall",
"src": "9364:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9359:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "9557:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "9559:16:1"
},
"nodeType": "YulFunctionCall",
"src": "9559:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "9559:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9469:1:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "9462:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9462:9:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "9455:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9455:17:1"
},
{
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9477:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9484:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9552:1:1"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "9480:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9480:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "9474:2:1"
},
"nodeType": "YulFunctionCall",
"src": "9474:81:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "9451:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9451:105:1"
},
"nodeType": "YulIf",
"src": "9448:131:1"
},
{
"nodeType": "YulAssignment",
"src": "9589:20:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "9604:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "9607:1:1"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "9600:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9600:9:1"
},
"variableNames": [
{
"name": "product",
"nodeType": "YulIdentifier",
"src": "9589:7:1"
}
]
}
]
},
"name": "checked_mul_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "9298:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "9301:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "product",
"nodeType": "YulTypedName",
"src": "9307:7:1",
"type": ""
}
],
"src": "9267:348:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9727:123:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9749:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9757:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9745:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9745:14:1"
},
{
"hexValue": "546865206c656e677468206f662074776f2061727261792073686f756c642062",
"kind": "string",
"nodeType": "YulLiteral",
"src": "9761:34:1",
"type": "",
"value": "The length of two array should b"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9738:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9738:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "9738:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9817:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9825:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9813:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9813:15:1"
},
{
"hexValue": "65207468652073616d65",
"kind": "string",
"nodeType": "YulLiteral",
"src": "9830:12:1",
"type": "",
"value": "e the same"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9806:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9806:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "9806:37:1"
}
]
},
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "9719:6:1",
"type": ""
}
],
"src": "9621:229:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10002:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10012:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10078:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10083:2:1",
"type": "",
"value": "42"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10019:58:1"
},
"nodeType": "YulFunctionCall",
"src": "10019:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10012:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10184:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulIdentifier",
"src": "10095:88:1"
},
"nodeType": "YulFunctionCall",
"src": "10095:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "10095:93:1"
},
{
"nodeType": "YulAssignment",
"src": "10197:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10208:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10213:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10204:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10204:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "10197:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "9990:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "9998:3:1",
"type": ""
}
],
"src": "9856:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10399:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10409:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10421:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10432:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10417:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10417:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10409:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10456:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10467:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10452:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10452:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10475:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10481:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "10471:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10471:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10445:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10445:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "10445:47:1"
},
{
"nodeType": "YulAssignment",
"src": "10501:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10635:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10509:124:1"
},
"nodeType": "YulFunctionCall",
"src": "10509:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10501:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "10379:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "10394:4:1",
"type": ""
}
],
"src": "10228:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10759:118:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "10781:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10789:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10777:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10777:14:1"
},
{
"hexValue": "5468652076616c7565206973206e6f742073756666696369656e74206f722065",
"kind": "string",
"nodeType": "YulLiteral",
"src": "10793:34:1",
"type": "",
"value": "The value is not sufficient or e"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10770:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10770:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "10770:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "10849:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10857:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10845:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10845:15:1"
},
{
"hexValue": "7863656564",
"kind": "string",
"nodeType": "YulLiteral",
"src": "10862:7:1",
"type": "",
"value": "xceed"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10838:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10838:32:1"
},
"nodeType": "YulExpressionStatement",
"src": "10838:32:1"
}
]
},
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "10751:6:1",
"type": ""
}
],
"src": "10653:224:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11029:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11039:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "11105:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11110:2:1",
"type": "",
"value": "37"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "11046:58:1"
},
"nodeType": "YulFunctionCall",
"src": "11046:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "11039:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "11211:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulIdentifier",
"src": "11122:88:1"
},
"nodeType": "YulFunctionCall",
"src": "11122:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "11122:93:1"
},
{
"nodeType": "YulAssignment",
"src": "11224:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "11235:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11240:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "11231:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11231:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "11224:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "11017:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "11025:3:1",
"type": ""
}
],
"src": "10883:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11426:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11436:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "11448:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11459:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "11444:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11444:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "11436:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "11483:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11494:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "11479:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11479:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "11502:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "11508:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "11498:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11498:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "11472:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11472:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "11472:47:1"
},
{
"nodeType": "YulAssignment",
"src": "11528:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "11662:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "11536:124:1"
},
"nodeType": "YulFunctionCall",
"src": "11536:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "11528:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "11406:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "11421:4:1",
"type": ""
}
],
"src": "11255:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11708:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11725:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11728:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "11718:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11718:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "11718:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11822:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11825:4:1",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "11815:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11815:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "11815:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11846:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11849:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "11839:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11839:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "11839:15:1"
}
]
},
"name": "panic_error_0x32",
"nodeType": "YulFunctionDefinition",
"src": "11680:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11911:146:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11921:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11944:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11926:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11926:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11921:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "11955:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11978:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11960:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11960:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11955:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "12002:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "12004:16:1"
},
"nodeType": "YulFunctionCall",
"src": "12004:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "12004:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11996:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11999:1:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "11993:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11993:8:1"
},
"nodeType": "YulIf",
"src": "11990:34:1"
},
{
"nodeType": "YulAssignment",
"src": "12034:17:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "12046:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "12049:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "12042:3:1"
},
"nodeType": "YulFunctionCall",
"src": "12042:9:1"
},
"variableNames": [
{
"name": "diff",
"nodeType": "YulIdentifier",
"src": "12034:4:1"
}
]
}
]
},
"name": "checked_sub_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "11897:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "11900:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "diff",
"nodeType": "YulTypedName",
"src": "11906:4:1",
"type": ""
}
],
"src": "11866:191:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "12106:190:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "12116:33:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "12143:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "12125:17:1"
},
"nodeType": "YulFunctionCall",
"src": "12125:24:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "12116:5:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "12239:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "12241:16:1"
},
"nodeType": "YulFunctionCall",
"src": "12241:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "12241:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "12164:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "12171:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "12161:2:1"
},
"nodeType": "YulFunctionCall",
"src": "12161:77:1"
},
"nodeType": "YulIf",
"src": "12158:103:1"
},
{
"nodeType": "YulAssignment",
"src": "12270:20:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "12281:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "12288:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "12277:3:1"
},
"nodeType": "YulFunctionCall",
"src": "12277:13:1"
},
"variableNames": [
{
"name": "ret",
"nodeType": "YulIdentifier",
"src": "12270:3:1"
}
]
}
]
},
"name": "increment_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "12092:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nodeType": "YulTypedName",
"src": "12102:3:1",
"type": ""
}
],
"src": "12063:233:1"
}
]
},
"contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_payable(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address_payable(value)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_address_payablet_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_payable(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 validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\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 panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // address payable[]\n function abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_address_payable(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // address payable[]\n function abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_uint256(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not owner\")\n\n }\n\n function abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 19)\n store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__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_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(memPtr) {\n\n mstore(add(memPtr, 0), \"The length of two array should b\")\n\n mstore(add(memPtr, 32), \"e the same\")\n\n }\n\n function abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__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_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(memPtr) {\n\n mstore(add(memPtr, 0), \"The value is not sufficient or e\")\n\n mstore(add(memPtr, 32), \"xceed\")\n\n }\n\n function abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__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_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\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 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}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "6080604052600436106100555760003560e01c8063551619131461005a578063893d20e8146100645780639b8080fd1461008f578063a6f9dae1146100ab578063b45651b4146100d4578063c0722f37146100f0575b600080fd5b61006261010c565b005b34801561007057600080fd5b506100796101b5565b60405161008691906105c9565b60405180910390f35b6100a960048036038101906100a4919061066c565b6101de565b005b3480156100b757600080fd5b506100d260048036038101906100cd91906106d8565b61023f565b005b6100ee60048036038101906100e9919061066c565b61038a565b005b61010a60048036038101906101059190610921565b6103eb565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461019a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610191906109f6565b60405180910390fd5b34600160008282546101ac9190610a45565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b670de0b6b3a7640000816101f29190610a9b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f1935050505015801561023a573d6000803e3d6000fd5b505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146102cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102c4906109f6565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b670de0b6b3a76400008161039e9190610a9b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156103e6573d6000803e3d6000fd5b505050565b34600160008282546103fd9190610a45565b925050819055508051825114610448576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043f90610b67565b60405180910390fd5b600061045382610530565b905080600154101561049a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161049190610bf9565b60405180910390fd5b60005b835181101561052a578281815181106104b9576104b8610c19565b5b6020026020010151600160008282546104d29190610c48565b925050819055506105178482815181106104ef576104ee610c19565b5b602002602001015184838151811061050a57610509610c19565b5b60200260200101516101de565b808061052290610c7c565b91505061049d565b50505050565b6000806000905060005b835181101561057e5783818151811061055657610555610c19565b5b6020026020010151826105699190610a45565b9150808061057690610c7c565b91505061053a565b5080915050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105b382610588565b9050919050565b6105c3816105a8565b82525050565b60006020820190506105de60008301846105ba565b92915050565b6000604051905090565b600080fd5b600080fd5b600061060382610588565b9050919050565b610613816105f8565b811461061e57600080fd5b50565b6000813590506106308161060a565b92915050565b6000819050919050565b61064981610636565b811461065457600080fd5b50565b60008135905061066681610640565b92915050565b60008060408385031215610683576106826105ee565b5b600061069185828601610621565b92505060206106a285828601610657565b9150509250929050565b6106b5816105a8565b81146106c057600080fd5b50565b6000813590506106d2816106ac565b92915050565b6000602082840312156106ee576106ed6105ee565b5b60006106fc848285016106c3565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6107538261070a565b810181811067ffffffffffffffff821117156107725761077161071b565b5b80604052505050565b60006107856105e4565b9050610791828261074a565b919050565b600067ffffffffffffffff8211156107b1576107b061071b565b5b602082029050602081019050919050565b600080fd5b60006107da6107d584610796565b61077b565b905080838252602082019050602084028301858111156107fd576107fc6107c2565b5b835b8181101561082657806108128882610621565b8452602084019350506020810190506107ff565b5050509392505050565b600082601f83011261084557610844610705565b5b81356108558482602086016107c7565b91505092915050565b600067ffffffffffffffff8211156108795761087861071b565b5b602082029050602081019050919050565b600061089d6108988461085e565b61077b565b905080838252602082019050602084028301858111156108c0576108bf6107c2565b5b835b818110156108e957806108d58882610657565b8452602084019350506020810190506108c2565b5050509392505050565b600082601f83011261090857610907610705565b5b813561091884826020860161088a565b91505092915050565b60008060408385031215610938576109376105ee565b5b600083013567ffffffffffffffff811115610956576109556105f3565b5b61096285828601610830565b925050602083013567ffffffffffffffff811115610983576109826105f3565b5b61098f858286016108f3565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006109e0601383610999565b91506109eb826109aa565b602082019050919050565b60006020820190508181036000830152610a0f816109d3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610a5082610636565b9150610a5b83610636565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115610a9057610a8f610a16565b5b828201905092915050565b6000610aa682610636565b9150610ab183610636565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610aea57610ae9610a16565b5b828202905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610b51602a83610999565b9150610b5c82610af5565b604082019050919050565b60006020820190508181036000830152610b8081610b44565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610be3602583610999565b9150610bee82610b87565b604082019050919050565b60006020820190508181036000830152610c1281610bd6565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610c5382610636565b9150610c5e83610636565b925082821015610c7157610c70610a16565b5b828203905092915050565b6000610c8782610636565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610cb957610cb8610a16565b5b60018201905091905056fea26469706673582212205851e518324e7af3dd439a6f99f4f196227e9d4cd1e3daa35104c8a65f54a10564736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x55 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x5A JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x64 JUMPI DUP1 PUSH4 0x9B8080FD EQ PUSH2 0x8F JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0xAB JUMPI DUP1 PUSH4 0xB45651B4 EQ PUSH2 0xD4 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xF0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x62 PUSH2 0x10C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x70 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x79 PUSH2 0x1B5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x86 SWAP2 SWAP1 PUSH2 0x5C9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA4 SWAP2 SWAP1 PUSH2 0x66C JUMP JUMPDEST PUSH2 0x1DE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCD SWAP2 SWAP1 PUSH2 0x6D8 JUMP JUMPDEST PUSH2 0x23F JUMP JUMPDEST STOP JUMPDEST PUSH2 0xEE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x66C JUMP JUMPDEST PUSH2 0x38A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x10A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x105 SWAP2 SWAP1 PUSH2 0x921 JUMP JUMPDEST PUSH2 0x3EB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x19A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x191 SWAP1 PUSH2 0x9F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1AC SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x1F2 SWAP2 SWAP1 PUSH2 0xA9B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x23A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2CD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2C4 SWAP1 PUSH2 0x9F6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x39E SWAP2 SWAP1 PUSH2 0xA9B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x3E6 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3FD SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x448 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x43F SWAP1 PUSH2 0xB67 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x453 DUP3 PUSH2 0x530 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x49A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x491 SWAP1 PUSH2 0xBF9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x52A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x4B9 JUMPI PUSH2 0x4B8 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x4D2 SWAP2 SWAP1 PUSH2 0xC48 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x517 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x4EF JUMPI PUSH2 0x4EE PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x50A JUMPI PUSH2 0x509 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1DE JUMP JUMPDEST DUP1 DUP1 PUSH2 0x522 SWAP1 PUSH2 0xC7C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x49D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x57E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x556 JUMPI PUSH2 0x555 PUSH2 0xC19 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x569 SWAP2 SWAP1 PUSH2 0xA45 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x576 SWAP1 PUSH2 0xC7C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x53A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B3 DUP3 PUSH2 0x588 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5C3 DUP2 PUSH2 0x5A8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x5DE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5BA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x603 DUP3 PUSH2 0x588 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x613 DUP2 PUSH2 0x5F8 JUMP JUMPDEST DUP2 EQ PUSH2 0x61E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x630 DUP2 PUSH2 0x60A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x649 DUP2 PUSH2 0x636 JUMP JUMPDEST DUP2 EQ PUSH2 0x654 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x666 DUP2 PUSH2 0x640 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x683 JUMPI PUSH2 0x682 PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x691 DUP6 DUP3 DUP7 ADD PUSH2 0x621 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x6A2 DUP6 DUP3 DUP7 ADD PUSH2 0x657 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x6B5 DUP2 PUSH2 0x5A8 JUMP JUMPDEST DUP2 EQ PUSH2 0x6C0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x6D2 DUP2 PUSH2 0x6AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x6EE JUMPI PUSH2 0x6ED PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x6FC DUP5 DUP3 DUP6 ADD PUSH2 0x6C3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x753 DUP3 PUSH2 0x70A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x772 JUMPI PUSH2 0x771 PUSH2 0x71B JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x785 PUSH2 0x5E4 JUMP JUMPDEST SWAP1 POP PUSH2 0x791 DUP3 DUP3 PUSH2 0x74A JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x7B1 JUMPI PUSH2 0x7B0 PUSH2 0x71B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x7DA PUSH2 0x7D5 DUP5 PUSH2 0x796 JUMP JUMPDEST PUSH2 0x77B JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7FD JUMPI PUSH2 0x7FC PUSH2 0x7C2 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x826 JUMPI DUP1 PUSH2 0x812 DUP9 DUP3 PUSH2 0x621 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7FF JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x845 JUMPI PUSH2 0x844 PUSH2 0x705 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x855 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x879 JUMPI PUSH2 0x878 PUSH2 0x71B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x89D PUSH2 0x898 DUP5 PUSH2 0x85E JUMP JUMPDEST PUSH2 0x77B JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x8C0 JUMPI PUSH2 0x8BF PUSH2 0x7C2 JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x8E9 JUMPI DUP1 PUSH2 0x8D5 DUP9 DUP3 PUSH2 0x657 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x8C2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x908 JUMPI PUSH2 0x907 PUSH2 0x705 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x918 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x88A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x938 JUMPI PUSH2 0x937 PUSH2 0x5EE JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x956 JUMPI PUSH2 0x955 PUSH2 0x5F3 JUMP JUMPDEST JUMPDEST PUSH2 0x962 DUP6 DUP3 DUP7 ADD PUSH2 0x830 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x983 JUMPI PUSH2 0x982 PUSH2 0x5F3 JUMP JUMPDEST JUMPDEST PUSH2 0x98F DUP6 DUP3 DUP7 ADD PUSH2 0x8F3 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E0 PUSH1 0x13 DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0x9EB DUP3 PUSH2 0x9AA 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 PUSH2 0xA0F DUP2 PUSH2 0x9D3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xA50 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xA5B DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0xA90 JUMPI PUSH2 0xA8F PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAA6 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xAB1 DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xAEA JUMPI PUSH2 0xAE9 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB51 PUSH1 0x2A DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0xB5C DUP3 PUSH2 0xAF5 JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xB80 DUP2 PUSH2 0xB44 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBE3 PUSH1 0x25 DUP4 PUSH2 0x999 JUMP JUMPDEST SWAP2 POP PUSH2 0xBEE DUP3 PUSH2 0xB87 JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xC12 DUP2 PUSH2 0xBD6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xC53 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH2 0xC5E DUP4 PUSH2 0x636 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xC71 JUMPI PUSH2 0xC70 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC87 DUP3 PUSH2 0x636 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xCB9 JUMPI PUSH2 0xCB8 PUSH2 0xA16 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PC MLOAD 0xE5 XOR ORIGIN 0x4E PUSH27 0xF3DD439A6F99F4F196227E9D4CD1E3DAA35104C8A65F54A1056473 PUSH16 0x6C634300080F00330000000000000000 ",
"sourceMap": "68:3932:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1831:143;;;:::i;:::-;;1667:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2442:183;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1438:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2633:183;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2948:1043;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1831:143;939:5;;;;;;;;;;925:19;;:10;:19;;;917:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1957:9:::1;1942:11;;:24;;;;;;;:::i;:::-;;;;;;;;1831:143::o:0;1667:83::-;1710:7;1737:5;;;;;;;;;;;1730:12;;1667:83;:::o;2442:183::-;2552:19;2538:33;;;;;:::i;:::-;;;2582:12;:21;;:35;2604:12;2582:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2442:183;;:::o;1438:131::-;939:5;;;;;;;;;;925:19;;:10;:19;;;917:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1524:8:::1;1508:25;;1517:5;::::0;::::1;;;;;;;;1508:25;;;;;;;;;;;;1552:8;1544:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;1438:131:::0;:::o;2633:183::-;2743:19;2729:33;;;;;:::i;:::-;;;2773:12;:21;;:35;2795:12;2773:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:183;;:::o;2948:1043::-;3185:9;3170:11;;:24;;;;;;;:::i;:::-;;;;;;;;3302:5;:12;3286:5;:12;:28;3278:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;3481:14;3498:10;3502:5;3498:3;:10::i;:::-;3481:27;;3552:9;3537:11;;:24;;3529:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;3639:6;3634:350;3653:5;:12;3649:1;:16;3634:350;;;3845:5;3851:1;3845:8;;;;;;;;:::i;:::-;;;;;;;;3830:11;;:23;;;;;;;:::i;:::-;;;;;;;;3941:31;3953:5;3959:1;3953:8;;;;;;;;:::i;:::-;;;;;;;;3963:5;3969:1;3963:8;;;;;;;;:::i;:::-;;;;;;;;3941:11;:31::i;:::-;3667:3;;;;;:::i;:::-;;;;3634:350;;;;3036:955;2948:1043;;:::o;2058:321::-;2116:11;2206:14;2223:1;2206:18;;2250:6;2245:90;2264:7;:14;2260:1;:18;2245:90;;;2313:7;2321:1;2313:10;;;;;;;;:::i;:::-;;;;;;;;2300:23;;;;;:::i;:::-;;;2280:3;;;;;:::i;:::-;;;;2245:90;;;;2362:9;2355:16;;;2058:321;;;:::o;7:126:1:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;593:75::-;626:6;659:2;653:9;643:19;;593:75;:::o;674:117::-;783:1;780;773:12;797:117;906:1;903;896:12;920:104;965:7;994:24;1012:5;994:24;:::i;:::-;983:35;;920:104;;;:::o;1030:138::-;1111:32;1137:5;1111:32;:::i;:::-;1104:5;1101:43;1091:71;;1158:1;1155;1148:12;1091:71;1030:138;:::o;1174:155::-;1228:5;1266:6;1253:20;1244:29;;1282:41;1317:5;1282:41;:::i;:::-;1174:155;;;;:::o;1335:77::-;1372:7;1401:5;1390:16;;1335:77;;;:::o;1418:122::-;1491:24;1509:5;1491:24;:::i;:::-;1484:5;1481:35;1471:63;;1530:1;1527;1520:12;1471:63;1418:122;:::o;1546:139::-;1592:5;1630:6;1617:20;1608:29;;1646:33;1673:5;1646:33;:::i;:::-;1546:139;;;;:::o;1691:490::-;1767:6;1775;1824:2;1812:9;1803:7;1799:23;1795:32;1792:119;;;1830:79;;:::i;:::-;1792:119;1950:1;1975:61;2028:7;2019:6;2008:9;2004:22;1975:61;:::i;:::-;1965:71;;1921:125;2085:2;2111:53;2156:7;2147:6;2136:9;2132:22;2111:53;:::i;:::-;2101:63;;2056:118;1691:490;;;;;:::o;2187:122::-;2260:24;2278:5;2260:24;:::i;:::-;2253:5;2250:35;2240:63;;2299:1;2296;2289:12;2240:63;2187:122;:::o;2315:139::-;2361:5;2399:6;2386:20;2377:29;;2415:33;2442:5;2415:33;:::i;:::-;2315:139;;;;:::o;2460:329::-;2519:6;2568:2;2556:9;2547:7;2543:23;2539:32;2536:119;;;2574:79;;:::i;:::-;2536:119;2694:1;2719:53;2764:7;2755:6;2744:9;2740:22;2719:53;:::i;:::-;2709:63;;2665:117;2460:329;;;;:::o;2795:117::-;2904:1;2901;2894:12;2918:102;2959:6;3010:2;3006:7;3001:2;2994:5;2990:14;2986:28;2976:38;;2918:102;;;:::o;3026:180::-;3074:77;3071:1;3064:88;3171:4;3168:1;3161:15;3195:4;3192:1;3185:15;3212:281;3295:27;3317:4;3295:27;:::i;:::-;3287:6;3283:40;3425:6;3413:10;3410:22;3389:18;3377:10;3374:34;3371:62;3368:88;;;3436:18;;:::i;:::-;3368:88;3476:10;3472:2;3465:22;3255:238;3212:281;;:::o;3499:129::-;3533:6;3560:20;;:::i;:::-;3550:30;;3589:33;3617:4;3609:6;3589:33;:::i;:::-;3499:129;;;:::o;3634:319::-;3719:4;3809:18;3801:6;3798:30;3795:56;;;3831:18;;:::i;:::-;3795:56;3881:4;3873:6;3869:17;3861:25;;3941:4;3935;3931:15;3923:23;;3634:319;;;:::o;3959:117::-;4068:1;4065;4058:12;4107:734;4211:5;4236:89;4252:72;4317:6;4252:72;:::i;:::-;4236:89;:::i;:::-;4227:98;;4345:5;4374:6;4367:5;4360:21;4408:4;4401:5;4397:16;4390:23;;4461:4;4453:6;4449:17;4441:6;4437:30;4490:3;4482:6;4479:15;4476:122;;;4509:79;;:::i;:::-;4476:122;4624:6;4607:228;4641:6;4636:3;4633:15;4607:228;;;4716:3;4745:45;4786:3;4774:10;4745:45;:::i;:::-;4740:3;4733:58;4820:4;4815:3;4811:14;4804:21;;4683:152;4667:4;4662:3;4658:14;4651:21;;4607:228;;;4611:21;4217:624;;4107:734;;;;;:::o;4872:386::-;4951:5;5000:3;4993:4;4985:6;4981:17;4977:27;4967:122;;5008:79;;:::i;:::-;4967:122;5125:6;5112:20;5150:102;5248:3;5240:6;5233:4;5225:6;5221:17;5150:102;:::i;:::-;5141:111;;4957:301;4872:386;;;;:::o;5264:311::-;5341:4;5431:18;5423:6;5420:30;5417:56;;;5453:18;;:::i;:::-;5417:56;5503:4;5495:6;5491:17;5483:25;;5563:4;5557;5553:15;5545:23;;5264:311;;;:::o;5598:710::-;5694:5;5719:81;5735:64;5792:6;5735:64;:::i;:::-;5719:81;:::i;:::-;5710:90;;5820:5;5849:6;5842:5;5835:21;5883:4;5876:5;5872:16;5865:23;;5936:4;5928:6;5924:17;5916:6;5912:30;5965:3;5957:6;5954:15;5951:122;;;5984:79;;:::i;:::-;5951:122;6099:6;6082:220;6116:6;6111:3;6108:15;6082:220;;;6191:3;6220:37;6253:3;6241:10;6220:37;:::i;:::-;6215:3;6208:50;6287:4;6282:3;6278:14;6271:21;;6158:144;6142:4;6137:3;6133:14;6126:21;;6082:220;;;6086:21;5700:608;;5598:710;;;;;:::o;6331:370::-;6402:5;6451:3;6444:4;6436:6;6432:17;6428:27;6418:122;;6459:79;;:::i;:::-;6418:122;6576:6;6563:20;6601:94;6691:3;6683:6;6676:4;6668:6;6664:17;6601:94;:::i;:::-;6592:103;;6408:293;6331:370;;;;:::o;6707:910::-;6833:6;6841;6890:2;6878:9;6869:7;6865:23;6861:32;6858:119;;;6896:79;;:::i;:::-;6858:119;7044:1;7033:9;7029:17;7016:31;7074:18;7066:6;7063:30;7060:117;;;7096:79;;:::i;:::-;7060:117;7201:86;7279:7;7270:6;7259:9;7255:22;7201:86;:::i;:::-;7191:96;;6987:310;7364:2;7353:9;7349:18;7336:32;7395:18;7387:6;7384:30;7381:117;;;7417:79;;:::i;:::-;7381:117;7522:78;7592:7;7583:6;7572:9;7568:22;7522:78;:::i;:::-;7512:88;;7307:303;6707:910;;;;;:::o;7623:169::-;7707:11;7741:6;7736:3;7729:19;7781:4;7776:3;7772:14;7757:29;;7623:169;;;;:::o;7798:::-;7938:21;7934:1;7926:6;7922:14;7915:45;7798:169;:::o;7973:366::-;8115:3;8136:67;8200:2;8195:3;8136:67;:::i;:::-;8129:74;;8212:93;8301:3;8212:93;:::i;:::-;8330:2;8325:3;8321:12;8314:19;;7973:366;;;:::o;8345:419::-;8511:4;8549:2;8538:9;8534:18;8526:26;;8598:9;8592:4;8588:20;8584:1;8573:9;8569:17;8562:47;8626:131;8752:4;8626:131;:::i;:::-;8618:139;;8345:419;;;:::o;8770:180::-;8818:77;8815:1;8808:88;8915:4;8912:1;8905:15;8939:4;8936:1;8929:15;8956:305;8996:3;9015:20;9033:1;9015:20;:::i;:::-;9010:25;;9049:20;9067:1;9049:20;:::i;:::-;9044:25;;9203:1;9135:66;9131:74;9128:1;9125:81;9122:107;;;9209:18;;:::i;:::-;9122:107;9253:1;9250;9246:9;9239:16;;8956:305;;;;:::o;9267:348::-;9307:7;9330:20;9348:1;9330:20;:::i;:::-;9325:25;;9364:20;9382:1;9364:20;:::i;:::-;9359:25;;9552:1;9484:66;9480:74;9477:1;9474:81;9469:1;9462:9;9455:17;9451:105;9448:131;;;9559:18;;:::i;:::-;9448:131;9607:1;9604;9600:9;9589:20;;9267:348;;;;:::o;9621:229::-;9761:34;9757:1;9749:6;9745:14;9738:58;9830:12;9825:2;9817:6;9813:15;9806:37;9621:229;:::o;9856:366::-;9998:3;10019:67;10083:2;10078:3;10019:67;:::i;:::-;10012:74;;10095:93;10184:3;10095:93;:::i;:::-;10213:2;10208:3;10204:12;10197:19;;9856:366;;;:::o;10228:419::-;10394:4;10432:2;10421:9;10417:18;10409:26;;10481:9;10475:4;10471:20;10467:1;10456:9;10452:17;10445:47;10509:131;10635:4;10509:131;:::i;:::-;10501:139;;10228:419;;;:::o;10653:224::-;10793:34;10789:1;10781:6;10777:14;10770:58;10862:7;10857:2;10849:6;10845:15;10838:32;10653:224;:::o;10883:366::-;11025:3;11046:67;11110:2;11105:3;11046:67;:::i;:::-;11039:74;;11122:93;11211:3;11122:93;:::i;:::-;11240:2;11235:3;11231:12;11224:19;;10883:366;;;:::o;11255:419::-;11421:4;11459:2;11448:9;11444:18;11436:26;;11508:9;11502:4;11498:20;11494:1;11483:9;11479:17;11472:47;11536:131;11662:4;11536:131;:::i;:::-;11528:139;;11255:419;;;:::o;11680:180::-;11728:77;11725:1;11718:88;11825:4;11822:1;11815:15;11849:4;11846:1;11839:15;11866:191;11906:4;11926:20;11944:1;11926:20;:::i;:::-;11921:25;;11960:20;11978:1;11960:20;:::i;:::-;11955:25;;11999:1;11996;11993:8;11990:34;;;12004:18;;:::i;:::-;11990:34;12049:1;12046;12042:9;12034:17;;11866:191;;;;:::o;12063:233::-;12102:3;12125:24;12143:5;12125:24;:::i;:::-;12116:33;;12171:66;12164:5;12161:77;12158:103;;12241:18;;:::i;:::-;12158:103;12288:1;12281:5;12277:13;12270:20;;12063:233;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "664400",
"executionCost": "50729",
"totalCost": "715129"
},
"external": {
"changeOwner(address)": "30611",
"charge()": "infinite",
"getOwner()": "2522",
"nodePayment(address,uint256)": "infinite",
"userPayment(address,uint256)": "infinite",
"withdrawls(address[],uint256[])": "infinite"
},
"internal": {
"sum(uint256[] memory)": "infinite"
}
},
"methodIdentifiers": {
"changeOwner(address)": "a6f9dae1",
"charge()": "55161913",
"getOwner()": "893d20e8",
"nodePayment(address,uint256)": "9b8080fd",
"userPayment(address,uint256)": "b45651b4",
"withdrawls(address[],uint256[])": "c0722f37"
}
},
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "charge",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "getOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "receiverAddr",
"type": "address"
},
{
"internalType": "uint256",
"name": "receiverAmnt",
"type": "uint256"
}
],
"name": "nodePayment",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "receiverAddr",
"type": "address"
},
{
"internalType": "uint256",
"name": "receiverAmnt",
"type": "uint256"
}
],
"name": "userPayment",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "addrs",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amnts",
"type": "uint256[]"
}
],
"name": "withdrawls",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
]
}
{
"compiler": {
"version": "0.8.15+commit.e14f2714"
},
"language": "Solidity",
"output": {
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "charge",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "getOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "receiverAddr",
"type": "address"
},
{
"internalType": "uint256",
"name": "receiverAmnt",
"type": "uint256"
}
],
"name": "nodePayment",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "receiverAddr",
"type": "address"
},
{
"internalType": "uint256",
"name": "receiverAmnt",
"type": "uint256"
}
],
"name": "userPayment",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "addrs",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amnts",
"type": "uint256[]"
}
],
"name": "withdrawls",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"constructor": {
"details": "Set contract deployer as owner"
},
"getOwner()": {
"details": "Return owner address ",
"returns": {
"_0": "address of owner"
}
}
},
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
},
"settings": {
"compilationTarget": {
"contracts/AllPayment.sol": "AllPayment"
},
"evmVersion": "london",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
},
"sources": {
"contracts/AllPayment.sol": {
"keccak256": "0xe6964b891ef1a302bb168498c224e6d0042a81b8c1fb98d8f7ef0f3c1146e817",
"license": "MIT",
"urls": [
"bzz-raw://edc17899249b9d853afd37d2c62099f04217f3823d5b25c52f6c8626b5e99bca",
"dweb:/ipfs/QmWMQtWb6kufTvDURuUuZqj3itNLSEtipxkjZvdi6P8PAQ"
]
}
},
"version": 1
}
{
"deploy": {
"VM:-": {
"linkReferences": {},
"autoDeployLib": true
},
"main:1": {
"linkReferences": {},
"autoDeployLib": true
},
"ropsten:3": {
"linkReferences": {},
"autoDeployLib": true
},
"rinkeby:4": {
"linkReferences": {},
"autoDeployLib": true
},
"kovan:42": {
"linkReferences": {},
"autoDeployLib": true
},
"görli:5": {
"linkReferences": {},
"autoDeployLib": true
},
"Custom": {
"linkReferences": {},
"autoDeployLib": true
}
},
"data": {
"bytecode": {
"functionDebugData": {
"@_46": {
"entryPoint": null,
"id": 46,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a334600181905550610c0b806100d56000396000f3fe60806040526004361061003f5760003560e01c80635516191314610044578063893d20e81461004e578063a6f9dae114610079578063c0722f37146100a2575b600080fd5b61004c6100be565b005b34801561005a57600080fd5b50610063610167565b604051610070919061051a565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b9190610575565b610190565b005b6100bc60048036038101906100b79190610832565b6102db565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014390610907565b60405180910390fd5b346001600082825461015e9190610956565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461021e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161021590610907565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b34600160008282546102ed9190610956565b925050819055508051825114610338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032f90610a1e565b60405180910390fd5b600061034382610420565b905080600154101561038a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038190610ab0565b60405180910390fd5b60005b835181101561041a578281815181106103a9576103a8610ad0565b5b6020026020010151600160008282546103c29190610aff565b925050819055506104078482815181106103df576103de610ad0565b5b60200260200101518483815181106103fa576103f9610ad0565b5b6020026020010151610478565b808061041290610b33565b91505061038d565b50505050565b6000806000905060005b835181101561046e5783818151811061044657610445610ad0565b5b6020026020010151826104599190610956565b9150808061046690610b33565b91505061042a565b5080915050919050565b670de0b6b3a76400008161048c9190610b7b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156104d4573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610504826104d9565b9050919050565b610514816104f9565b82525050565b600060208201905061052f600083018461050b565b92915050565b6000604051905090565b600080fd5b600080fd5b610552816104f9565b811461055d57600080fd5b50565b60008135905061056f81610549565b92915050565b60006020828403121561058b5761058a61053f565b5b600061059984828501610560565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6105f0826105a7565b810181811067ffffffffffffffff8211171561060f5761060e6105b8565b5b80604052505050565b6000610622610535565b905061062e82826105e7565b919050565b600067ffffffffffffffff82111561064e5761064d6105b8565b5b602082029050602081019050919050565b600080fd5b600061066f826104d9565b9050919050565b61067f81610664565b811461068a57600080fd5b50565b60008135905061069c81610676565b92915050565b60006106b56106b084610633565b610618565b905080838252602082019050602084028301858111156106d8576106d761065f565b5b835b8181101561070157806106ed888261068d565b8452602084019350506020810190506106da565b5050509392505050565b600082601f8301126107205761071f6105a2565b5b81356107308482602086016106a2565b91505092915050565b600067ffffffffffffffff821115610754576107536105b8565b5b602082029050602081019050919050565b6000819050919050565b61077881610765565b811461078357600080fd5b50565b6000813590506107958161076f565b92915050565b60006107ae6107a984610739565b610618565b905080838252602082019050602084028301858111156107d1576107d061065f565b5b835b818110156107fa57806107e68882610786565b8452602084019350506020810190506107d3565b5050509392505050565b600082601f830112610819576108186105a2565b5b813561082984826020860161079b565b91505092915050565b600080604083850312156108495761084861053f565b5b600083013567ffffffffffffffff81111561086757610866610544565b5b6108738582860161070b565b925050602083013567ffffffffffffffff81111561089457610893610544565b5b6108a085828601610804565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006108f16013836108aa565b91506108fc826108bb565b602082019050919050565b60006020820190508181036000830152610920816108e4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061096182610765565b915061096c83610765565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156109a1576109a0610927565b5b828201905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610a08602a836108aa565b9150610a13826109ac565b604082019050919050565b60006020820190508181036000830152610a37816109fb565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610a9a6025836108aa565b9150610aa582610a3e565b604082019050919050565b60006020820190508181036000830152610ac981610a8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610b0a82610765565b9150610b1583610765565b925082821015610b2857610b27610927565b5b828203905092915050565b6000610b3e82610765565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610b7057610b6f610927565b5b600182019050919050565b6000610b8682610765565b9150610b9183610765565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610bca57610bc9610927565b5b82820290509291505056fea2646970667358221220ac93684805ae5ea3cc60dbf6dbe2c170b17d160ccfbfb391a59c27ae6fe3bfc764736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLER PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 CALLVALUE PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH2 0xC0B DUP1 PUSH2 0xD5 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x44 JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x4E JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0x79 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xA2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4C PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x63 PUSH2 0x167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70 SWAP2 SWAP1 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9B SWAP2 SWAP1 PUSH2 0x575 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x832 JUMP JUMPDEST PUSH2 0x2DB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x143 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15E SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x21E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x215 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2ED SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32F SWAP1 PUSH2 0xA1E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x343 DUP3 PUSH2 0x420 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x38A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x381 SWAP1 PUSH2 0xAB0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x41A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x3A9 JUMPI PUSH2 0x3A8 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0xAFF JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x407 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3DF JUMPI PUSH2 0x3DE PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3FA JUMPI PUSH2 0x3F9 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x478 JUMP JUMPDEST DUP1 DUP1 PUSH2 0x412 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x38D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x46E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x446 JUMPI PUSH2 0x445 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x459 SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x466 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x42A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x48C SWAP2 SWAP1 PUSH2 0xB7B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x4D4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x514 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x52F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x50B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x552 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP2 EQ PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x56F DUP2 PUSH2 0x549 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58B JUMPI PUSH2 0x58A PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x599 DUP5 DUP3 DUP6 ADD PUSH2 0x560 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x5F0 DUP3 PUSH2 0x5A7 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x60F JUMPI PUSH2 0x60E PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x622 PUSH2 0x535 JUMP JUMPDEST SWAP1 POP PUSH2 0x62E DUP3 DUP3 PUSH2 0x5E7 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x64E JUMPI PUSH2 0x64D PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x66F DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x67F DUP2 PUSH2 0x664 JUMP JUMPDEST DUP2 EQ PUSH2 0x68A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x69C DUP2 PUSH2 0x676 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B5 PUSH2 0x6B0 DUP5 PUSH2 0x633 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6D8 JUMPI PUSH2 0x6D7 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x701 JUMPI DUP1 PUSH2 0x6ED DUP9 DUP3 PUSH2 0x68D JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6DA JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x720 JUMPI PUSH2 0x71F PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x730 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x754 JUMPI PUSH2 0x753 PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x778 DUP2 PUSH2 0x765 JUMP JUMPDEST DUP2 EQ PUSH2 0x783 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x795 DUP2 PUSH2 0x76F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AE PUSH2 0x7A9 DUP5 PUSH2 0x739 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7D1 JUMPI PUSH2 0x7D0 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x7FA JUMPI DUP1 PUSH2 0x7E6 DUP9 DUP3 PUSH2 0x786 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7D3 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x819 JUMPI PUSH2 0x818 PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x829 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x79B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x849 JUMPI PUSH2 0x848 PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x866 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x873 DUP6 DUP3 DUP7 ADD PUSH2 0x70B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x893 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x8A0 DUP6 DUP3 DUP7 ADD PUSH2 0x804 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F1 PUSH1 0x13 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0x8FC DUP3 PUSH2 0x8BB 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 PUSH2 0x920 DUP2 PUSH2 0x8E4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x961 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0x96C DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x9A1 JUMPI PUSH2 0x9A0 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA08 PUSH1 0x2A DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xA13 DUP3 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xA37 DUP2 PUSH2 0x9FB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9A PUSH1 0x25 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xAA5 DUP3 PUSH2 0xA3E JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xAC9 DUP2 PUSH2 0xA8D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xB0A DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB15 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xB28 JUMPI PUSH2 0xB27 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xB70 JUMPI PUSH2 0xB6F PUSH2 0x927 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB86 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB91 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xBCA JUMPI PUSH2 0xBC9 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xAC SWAP4 PUSH9 0x4805AE5EA3CC60DBF6 0xDB 0xE2 0xC1 PUSH17 0xB17D160CCFBFB391A59C27AE6FE3BFC764 PUSH20 0x6F6C634300080F00330000000000000000000000 ",
"sourceMap": "68:3917:0:-:0;;;1101:10;1093:5;;:18;;;;;;;;;;;;;;;;;;1227:5;;;;;;;;;;1206:27;;1223:1;1206:27;;;;;;;;;;;;1268:9;1254:11;:23;;;;68:3917;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@changeOwner_63": {
"entryPoint": 400,
"id": 63,
"parameterSlots": 1,
"returnSlots": 0
},
"@charge_83": {
"entryPoint": 190,
"id": 83,
"parameterSlots": 0,
"returnSlots": 0
},
"@getOwner_72": {
"entryPoint": 359,
"id": 72,
"parameterSlots": 0,
"returnSlots": 1
},
"@nodePayment_135": {
"entryPoint": 1144,
"id": 135,
"parameterSlots": 2,
"returnSlots": 0
},
"@sum_117": {
"entryPoint": 1056,
"id": 117,
"parameterSlots": 1,
"returnSlots": 1
},
"@withdrawls_218": {
"entryPoint": 731,
"id": 218,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1698,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 1947,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 1376,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_address_payable": {
"entryPoint": 1677,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1803,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2052,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 1926,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 1397,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2098,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 1291,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2276,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2701,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2555,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
"entryPoint": 1306,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2311,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2736,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2590,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_memory": {
"entryPoint": 1560,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 1333,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1587,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 1849,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 2218,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 2390,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 2939,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_sub_t_uint256": {
"entryPoint": 2815,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 1273,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_address_payable": {
"entryPoint": 1636,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 1241,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 1893,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 1511,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"increment_t_uint256": {
"entryPoint": 2867,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 2343,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x32": {
"entryPoint": 2768,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 1464,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 1442,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": {
"entryPoint": 1631,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 1348,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 1343,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 1447,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d": {
"entryPoint": 2235,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649": {
"entryPoint": 2622,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1": {
"entryPoint": 2476,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 1353,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address_payable": {
"entryPoint": 1654,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 1903,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:11803:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "52:81:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "62:65:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "77:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "84:42:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "73:3:1"
},
"nodeType": "YulFunctionCall",
"src": "73:54:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "62:7:1"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "34:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "44:7:1",
"type": ""
}
],
"src": "7:126:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "184:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "194:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "223:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "205:17:1"
},
"nodeType": "YulFunctionCall",
"src": "205:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "194:7:1"
}
]
}
]
},
"name": "cleanup_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "166:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "176:7:1",
"type": ""
}
],
"src": "139:96:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "306:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "323:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "346:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "328:17:1"
},
"nodeType": "YulFunctionCall",
"src": "328:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "316:6:1"
},
"nodeType": "YulFunctionCall",
"src": "316:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "316:37:1"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "294:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "301:3:1",
"type": ""
}
],
"src": "241:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "463:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "473:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "485:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "496:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "481:3:1"
},
"nodeType": "YulFunctionCall",
"src": "481:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "473:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "553:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "566:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "577:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "562:3:1"
},
"nodeType": "YulFunctionCall",
"src": "562:17:1"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulIdentifier",
"src": "509:43:1"
},
"nodeType": "YulFunctionCall",
"src": "509:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "509:71:1"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "435:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "447:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "458:4:1",
"type": ""
}
],
"src": "365:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "633:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "643:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "659:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "653:5:1"
},
"nodeType": "YulFunctionCall",
"src": "653:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "643:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "626:6:1",
"type": ""
}
],
"src": "593:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "763:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "780:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "783:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "773:6:1"
},
"nodeType": "YulFunctionCall",
"src": "773:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "773:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "674:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "886:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "903:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "906:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "896:6:1"
},
"nodeType": "YulFunctionCall",
"src": "896:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "896:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "797:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "963:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1020:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1029:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1032:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1022:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1022:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1022:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "986:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1011:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "993:17:1"
},
"nodeType": "YulFunctionCall",
"src": "993:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "983:2:1"
},
"nodeType": "YulFunctionCall",
"src": "983:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "976:6:1"
},
"nodeType": "YulFunctionCall",
"src": "976:43:1"
},
"nodeType": "YulIf",
"src": "973:63:1"
}
]
},
"name": "validator_revert_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "956:5:1",
"type": ""
}
],
"src": "920:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1100:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1110:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1132:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1119:12:1"
},
"nodeType": "YulFunctionCall",
"src": "1119:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1110:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1175:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nodeType": "YulIdentifier",
"src": "1148:26:1"
},
"nodeType": "YulFunctionCall",
"src": "1148:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "1148:33:1"
}
]
},
"name": "abi_decode_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1078:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1086:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1094:5:1",
"type": ""
}
],
"src": "1048:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1259:263:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1305:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "1307:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1307:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1307:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1280:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1289:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1276:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1276:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1301:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1272:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1272:32:1"
},
"nodeType": "YulIf",
"src": "1269:119:1"
},
{
"nodeType": "YulBlock",
"src": "1398:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1413:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "1427:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1417:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1442:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1477:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1488:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1473:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1473:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1497:7:1"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nodeType": "YulIdentifier",
"src": "1452:20:1"
},
"nodeType": "YulFunctionCall",
"src": "1452:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1442:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1229:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1240:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1252:6:1",
"type": ""
}
],
"src": "1193:329:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1617:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1634:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1637:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1627:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1627:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1627:12:1"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulFunctionDefinition",
"src": "1528:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1699:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1709:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1727:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1734:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1723:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1723:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1743:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "1739:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1739:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1719:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1719:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "1709:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1682:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "1692:6:1",
"type": ""
}
],
"src": "1651:102:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1787:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1804:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1807:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1797:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1797:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1797:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1901:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1904:4:1",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1894:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1894:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1894:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1925:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1928:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1918:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1918:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1918:15:1"
}
]
},
"name": "panic_error_0x41",
"nodeType": "YulFunctionDefinition",
"src": "1759:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1988:238:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1998:58:1",
"value": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2020:6:1"
},
{
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2050:4:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "2028:21:1"
},
"nodeType": "YulFunctionCall",
"src": "2028:27:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2016:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2016:40:1"
},
"variables": [
{
"name": "newFreePtr",
"nodeType": "YulTypedName",
"src": "2002:10:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2167:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "2169:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2169:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2169:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2110:10:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2122:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2107:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2107:34:1"
},
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2146:10:1"
},
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2158:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2143:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2143:22:1"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "2104:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2104:62:1"
},
"nodeType": "YulIf",
"src": "2101:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2205:2:1",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2209:10:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2198:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2198:22:1"
},
"nodeType": "YulExpressionStatement",
"src": "2198:22:1"
}
]
},
"name": "finalize_allocation",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "1974:6:1",
"type": ""
},
{
"name": "size",
"nodeType": "YulTypedName",
"src": "1982:4:1",
"type": ""
}
],
"src": "1945:281:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2273:88:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2283:30:1",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nodeType": "YulIdentifier",
"src": "2293:18:1"
},
"nodeType": "YulFunctionCall",
"src": "2293:20:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2283:6:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2342:6:1"
},
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2350:4:1"
}
],
"functionName": {
"name": "finalize_allocation",
"nodeType": "YulIdentifier",
"src": "2322:19:1"
},
"nodeType": "YulFunctionCall",
"src": "2322:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "2322:33:1"
}
]
},
"name": "allocate_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "2257:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "2266:6:1",
"type": ""
}
],
"src": "2232:129:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2457:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "2562:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "2564:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2564:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2564:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2534:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2542:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2531:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2531:30:1"
},
"nodeType": "YulIf",
"src": "2528:56:1"
},
{
"nodeType": "YulAssignment",
"src": "2594:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2606:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2614:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "2602:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2602:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2594:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "2656:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2668:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2674:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2664:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2664:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2656:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2441:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "2452:4:1",
"type": ""
}
],
"src": "2367:319:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2781:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2798:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2801:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2791:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2791:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2791:12:1"
}
]
},
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulFunctionDefinition",
"src": "2692:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2868:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2878:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2907:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "2889:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2889:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2878:7:1"
}
]
}
]
},
"name": "cleanup_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2850:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2860:7:1",
"type": ""
}
],
"src": "2815:104:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2976:87:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "3041:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3050:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3053:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "3043:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3043:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "3043:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2999:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3032:5:1"
}
],
"functionName": {
"name": "cleanup_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3006:25:1"
},
"nodeType": "YulFunctionCall",
"src": "3006:32:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2996:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2996:43:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2989:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2989:51:1"
},
"nodeType": "YulIf",
"src": "2986:71:1"
}
]
},
"name": "validator_revert_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2969:5:1",
"type": ""
}
],
"src": "2925:138:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3129:95:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3139:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3161:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "3148:12:1"
},
"nodeType": "YulFunctionCall",
"src": "3148:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3139:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3212:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3177:34:1"
},
"nodeType": "YulFunctionCall",
"src": "3177:41:1"
},
"nodeType": "YulExpressionStatement",
"src": "3177:41:1"
}
]
},
"name": "abi_decode_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "3107:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "3115:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3123:5:1",
"type": ""
}
],
"src": "3069:155:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3365:624:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3375:98:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3465:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "3400:64:1"
},
"nodeType": "YulFunctionCall",
"src": "3400:72:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "3384:15:1"
},
"nodeType": "YulFunctionCall",
"src": "3384:89:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3375:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3482:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "3493:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "3486:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3515:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3522:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3508:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3508:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "3508:21:1"
},
{
"nodeType": "YulAssignment",
"src": "3538:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3549:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3556:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3545:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3545:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3538:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3571:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3589:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3601:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3609:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "3597:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3597:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3585:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3585:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "3575:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3643:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "3657:77:1"
},
"nodeType": "YulFunctionCall",
"src": "3657:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "3657:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "3630:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "3638:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3627:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3627:15:1"
},
"nodeType": "YulIf",
"src": "3624:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3831:152:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3846:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "3864:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "3850:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3888:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "3922:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "3934:3:1"
}
],
"functionName": {
"name": "abi_decode_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3893:28:1"
},
"nodeType": "YulFunctionCall",
"src": "3893:45:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3881:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3881:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "3881:58:1"
},
{
"nodeType": "YulAssignment",
"src": "3952:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3963:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3968:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3959:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3959:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3952:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3784:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "3789:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3781:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3781:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "3797:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3799:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3810:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3815:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3806:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3806:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3799:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "3759:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3761:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3772:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "3765:3:1",
"type": ""
}
]
}
]
},
"src": "3755:228:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "3335:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3343:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "3351:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "3359:5:1",
"type": ""
}
],
"src": "3255:734:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4105:301:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4154:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "4156:77:1"
},
"nodeType": "YulFunctionCall",
"src": "4156:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "4156:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4133:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4141:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4129:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4129:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4148:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "4125:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4125:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4118:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4118:35:1"
},
"nodeType": "YulIf",
"src": "4115:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "4246:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4273:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "4260:12:1"
},
"nodeType": "YulFunctionCall",
"src": "4260:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4250:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "4289:111:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4373:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4381:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4369:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4369:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4388:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4396:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "4298:70:1"
},
"nodeType": "YulFunctionCall",
"src": "4298:102:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "4289:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4083:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4091:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "4099:5:1",
"type": ""
}
],
"src": "4020:386:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4494:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4599:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "4601:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4601:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4601:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4571:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4579:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4568:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4568:30:1"
},
"nodeType": "YulIf",
"src": "4565:56:1"
},
{
"nodeType": "YulAssignment",
"src": "4631:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4643:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4651:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "4639:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4639:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4631:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "4693:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4705:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4711:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4701:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4701:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4693:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4478:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "4489:4:1",
"type": ""
}
],
"src": "4412:311:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4774:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4784:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "4795:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "4784:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4756:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "4766:7:1",
"type": ""
}
],
"src": "4729:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4855:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4912:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4921:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4924:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4914:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4914:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "4914:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4878:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4903:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "4885:17:1"
},
"nodeType": "YulFunctionCall",
"src": "4885:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "4875:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4875:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4868:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4868:43:1"
},
"nodeType": "YulIf",
"src": "4865:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4848:5:1",
"type": ""
}
],
"src": "4812:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4992:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5002:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5024:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "5011:12:1"
},
"nodeType": "YulFunctionCall",
"src": "5011:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5002:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5067:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "5040:26:1"
},
"nodeType": "YulFunctionCall",
"src": "5040:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "5040:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4970:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4978:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4986:5:1",
"type": ""
}
],
"src": "4940:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5204:608:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5214:90:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5296:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "5239:56:1"
},
"nodeType": "YulFunctionCall",
"src": "5239:64:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "5223:15:1"
},
"nodeType": "YulFunctionCall",
"src": "5223:81:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5214:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5313:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "5324:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "5317:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5346:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5353:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5339:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5339:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "5339:21:1"
},
{
"nodeType": "YulAssignment",
"src": "5369:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5380:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5387:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5376:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5376:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5369:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5402:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5420:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5432:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5440:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "5428:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5428:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5416:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5416:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "5406:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "5474:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "5488:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5488:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5488:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "5461:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5469:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "5458:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5458:15:1"
},
"nodeType": "YulIf",
"src": "5455:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5662:144:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5677:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "5695:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "5681:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5719:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "5745:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5757:3:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "5724:20:1"
},
"nodeType": "YulFunctionCall",
"src": "5724:37:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5712:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5712:50:1"
},
"nodeType": "YulExpressionStatement",
"src": "5712:50:1"
},
{
"nodeType": "YulAssignment",
"src": "5775:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5786:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5791:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5782:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5782:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5775:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5615:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "5620:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "5612:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5612:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "5628:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5630:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5641:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5646:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5637:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5637:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5630:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "5590:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5592:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5603:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "5596:3:1",
"type": ""
}
]
}
]
},
"src": "5586:220:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "5174:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5182:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5190:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "5198:5:1",
"type": ""
}
],
"src": "5102:710:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5912:293:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "5961:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "5963:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5963:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5963:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5940:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5948:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5936:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5936:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5955:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "5932:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5932:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "5925:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5925:35:1"
},
"nodeType": "YulIf",
"src": "5922:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "6053:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6080:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6067:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6067:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "6057:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "6096:103:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6172:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6180:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6168:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6168:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "6187:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "6195:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "6105:62:1"
},
"nodeType": "YulFunctionCall",
"src": "6105:94:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "6096:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "5890:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5898:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "5906:5:1",
"type": ""
}
],
"src": "5835:370:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "6352:769:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "6398:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "6400:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6400:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6400:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "6373:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6382:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "6369:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6369:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6394:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "6365:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6365:32:1"
},
"nodeType": "YulIf",
"src": "6362:119:1"
},
{
"nodeType": "YulBlock",
"src": "6491:310:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6506:45:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6537:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6548:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6533:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6533:17:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6520:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6520:31:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "6510:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "6598:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "6600:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6600:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6600:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6570:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6578:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "6567:2:1"
},
"nodeType": "YulFunctionCall",
"src": "6567:30:1"
},
"nodeType": "YulIf",
"src": "6564:117:1"
},
{
"nodeType": "YulAssignment",
"src": "6695:96:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6763:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6774:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6759:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6759:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "6783:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "6705:53:1"
},
"nodeType": "YulFunctionCall",
"src": "6705:86:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "6695:6:1"
}
]
}
]
},
{
"nodeType": "YulBlock",
"src": "6811:303:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6826:46:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6857:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6868:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6853:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6853:18:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6840:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6840:32:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "6830:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "6919:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "6921:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6921:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6921:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6891:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6899:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "6888:2:1"
},
"nodeType": "YulFunctionCall",
"src": "6888:30:1"
},
"nodeType": "YulIf",
"src": "6885:117:1"
},
{
"nodeType": "YulAssignment",
"src": "7016:88:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7076:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7087:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7072:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7072:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "7096:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "7026:45:1"
},
"nodeType": "YulFunctionCall",
"src": "7026:78:1"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "7016:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "6314:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "6325:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "6337:6:1",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "6345:6:1",
"type": ""
}
],
"src": "6211:910:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7223:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7240:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "7245:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7233:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7233:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "7233:19:1"
},
{
"nodeType": "YulAssignment",
"src": "7261:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7280:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7285:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7276:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7276:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "7261:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "7195:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "7200:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "7211:11:1",
"type": ""
}
],
"src": "7127:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7408:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "7430:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7438:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7426:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7426:14:1"
},
{
"hexValue": "43616c6c6572206973206e6f74206f776e6572",
"kind": "string",
"nodeType": "YulLiteral",
"src": "7442:21:1",
"type": "",
"value": "Caller is not owner"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7419:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7419:45:1"
},
"nodeType": "YulExpressionStatement",
"src": "7419:45:1"
}
]
},
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "7400:6:1",
"type": ""
}
],
"src": "7302:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7623:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "7633:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7699:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7704:2:1",
"type": "",
"value": "19"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "7640:58:1"
},
"nodeType": "YulFunctionCall",
"src": "7640:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7633:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7805:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulIdentifier",
"src": "7716:88:1"
},
"nodeType": "YulFunctionCall",
"src": "7716:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "7716:93:1"
},
{
"nodeType": "YulAssignment",
"src": "7818:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7829:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7834:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7825:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7825:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "7818:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "7611:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "7619:3:1",
"type": ""
}
],
"src": "7477:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8020:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8030:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8042:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8053:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8038:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8038:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8030:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8077:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8088:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8073:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8073:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8096:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8102:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "8092:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8092:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8066:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8066:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "8066:47:1"
},
{
"nodeType": "YulAssignment",
"src": "8122:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8256:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "8130:124:1"
},
"nodeType": "YulFunctionCall",
"src": "8130:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8122:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "8000:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "8015:4:1",
"type": ""
}
],
"src": "7849:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8302:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8319:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8322:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8312:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8312:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "8312:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8416:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8419:4:1",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8409:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8409:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8409:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8440:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8443:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "8433:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8433:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8433:15:1"
}
]
},
"name": "panic_error_0x11",
"nodeType": "YulFunctionDefinition",
"src": "8274:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8504:261:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8514:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8537:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "8519:17:1"
},
"nodeType": "YulFunctionCall",
"src": "8519:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8514:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "8548:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8571:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "8553:17:1"
},
"nodeType": "YulFunctionCall",
"src": "8553:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8548:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "8711:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "8713:16:1"
},
"nodeType": "YulFunctionCall",
"src": "8713:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "8713:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8632:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8639:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8707:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "8635:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8635:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "8629:2:1"
},
"nodeType": "YulFunctionCall",
"src": "8629:81:1"
},
"nodeType": "YulIf",
"src": "8626:107:1"
},
{
"nodeType": "YulAssignment",
"src": "8743:16:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8754:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8757:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8750:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8750:9:1"
},
"variableNames": [
{
"name": "sum",
"nodeType": "YulIdentifier",
"src": "8743:3:1"
}
]
}
]
},
"name": "checked_add_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "8491:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "8494:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nodeType": "YulTypedName",
"src": "8500:3:1",
"type": ""
}
],
"src": "8460:305:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8877:123:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "8899:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8907:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8895:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8895:14:1"
},
{
"hexValue": "546865206c656e677468206f662074776f2061727261792073686f756c642062",
"kind": "string",
"nodeType": "YulLiteral",
"src": "8911:34:1",
"type": "",
"value": "The length of two array should b"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8888:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8888:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "8888:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "8967:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8975:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8963:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8963:15:1"
},
{
"hexValue": "65207468652073616d65",
"kind": "string",
"nodeType": "YulLiteral",
"src": "8980:12:1",
"type": "",
"value": "e the same"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8956:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8956:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "8956:37:1"
}
]
},
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "8869:6:1",
"type": ""
}
],
"src": "8771:229:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9152:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9162:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9228:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9233:2:1",
"type": "",
"value": "42"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "9169:58:1"
},
"nodeType": "YulFunctionCall",
"src": "9169:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9162:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9334:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulIdentifier",
"src": "9245:88:1"
},
"nodeType": "YulFunctionCall",
"src": "9245:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "9245:93:1"
},
{
"nodeType": "YulAssignment",
"src": "9347:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9358:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9363:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9354:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9354:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "9347:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "9140:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "9148:3:1",
"type": ""
}
],
"src": "9006:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9549:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9559:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9571:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9582:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9567:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9567:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9559:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9606:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9617:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9602:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9602:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9625:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9631:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "9621:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9621:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9595:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9595:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "9595:47:1"
},
{
"nodeType": "YulAssignment",
"src": "9651:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9785:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "9659:124:1"
},
"nodeType": "YulFunctionCall",
"src": "9659:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9651:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "9529:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "9544:4:1",
"type": ""
}
],
"src": "9378:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9909:118:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9931:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9939:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9927:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9927:14:1"
},
{
"hexValue": "5468652076616c7565206973206e6f742073756666696369656e74206f722065",
"kind": "string",
"nodeType": "YulLiteral",
"src": "9943:34:1",
"type": "",
"value": "The value is not sufficient or e"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9920:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9920:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "9920:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9999:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10007:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9995:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9995:15:1"
},
{
"hexValue": "7863656564",
"kind": "string",
"nodeType": "YulLiteral",
"src": "10012:7:1",
"type": "",
"value": "xceed"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9988:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9988:32:1"
},
"nodeType": "YulExpressionStatement",
"src": "9988:32:1"
}
]
},
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "9901:6:1",
"type": ""
}
],
"src": "9803:224:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10179:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10189:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10255:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10260:2:1",
"type": "",
"value": "37"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10196:58:1"
},
"nodeType": "YulFunctionCall",
"src": "10196:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10189:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10361:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulIdentifier",
"src": "10272:88:1"
},
"nodeType": "YulFunctionCall",
"src": "10272:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "10272:93:1"
},
{
"nodeType": "YulAssignment",
"src": "10374:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10385:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10390:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10381:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10381:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "10374:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "10167:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "10175:3:1",
"type": ""
}
],
"src": "10033:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10576:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10586:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10598:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10609:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10594:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10594:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10586:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10633:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10644:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10629:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10629:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10652:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10658:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "10648:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10648:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10622:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10622:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "10622:47:1"
},
{
"nodeType": "YulAssignment",
"src": "10678:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10812:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10686:124:1"
},
"nodeType": "YulFunctionCall",
"src": "10686:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10678:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "10556:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "10571:4:1",
"type": ""
}
],
"src": "10405:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10858:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10875:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10878:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10868:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10868:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "10868:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10972:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10975:4:1",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10965:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10965:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "10965:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10996:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10999:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "10989:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10989:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "10989:15:1"
}
]
},
"name": "panic_error_0x32",
"nodeType": "YulFunctionDefinition",
"src": "10830:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11061:146:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11071:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11094:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11076:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11076:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11071:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "11105:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11128:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11110:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11110:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11105:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11152:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11154:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11154:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11154:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11146:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11149:1:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "11143:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11143:8:1"
},
"nodeType": "YulIf",
"src": "11140:34:1"
},
{
"nodeType": "YulAssignment",
"src": "11184:17:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11196:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11199:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "11192:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11192:9:1"
},
"variableNames": [
{
"name": "diff",
"nodeType": "YulIdentifier",
"src": "11184:4:1"
}
]
}
]
},
"name": "checked_sub_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "11047:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "11050:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "diff",
"nodeType": "YulTypedName",
"src": "11056:4:1",
"type": ""
}
],
"src": "11016:191:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11256:190:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11266:33:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11293:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11275:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11275:24:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11266:5:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11389:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11391:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11391:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11391:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11314:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11321:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "11311:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11311:77:1"
},
"nodeType": "YulIf",
"src": "11308:103:1"
},
{
"nodeType": "YulAssignment",
"src": "11420:20:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11431:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11438:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "11427:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11427:13:1"
},
"variableNames": [
{
"name": "ret",
"nodeType": "YulIdentifier",
"src": "11420:3:1"
}
]
}
]
},
"name": "increment_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "11242:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nodeType": "YulTypedName",
"src": "11252:3:1",
"type": ""
}
],
"src": "11213:233:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11500:300:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11510:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11533:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11515:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11515:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11510:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "11544:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11567:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11549:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11549:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11544:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11742:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11744:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11744:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11744:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11654:1:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "11647:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11647:9:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "11640:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11640:17:1"
},
{
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11662:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11669:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11737:1:1"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "11665:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11665:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "11659:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11659:81:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "11636:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11636:105:1"
},
"nodeType": "YulIf",
"src": "11633:131:1"
},
{
"nodeType": "YulAssignment",
"src": "11774:20:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11789:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11792:1:1"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "11785:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11785:9:1"
},
"variableNames": [
{
"name": "product",
"nodeType": "YulIdentifier",
"src": "11774:7:1"
}
]
}
]
},
"name": "checked_mul_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "11483:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "11486:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "product",
"nodeType": "YulTypedName",
"src": "11492:7:1",
"type": ""
}
],
"src": "11452:348:1"
}
]
},
"contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\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 panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_payable(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address_payable(value)\n }\n\n // address payable[]\n function abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_address_payable(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // address payable[]\n function abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_uint256(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not owner\")\n\n }\n\n function abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 19)\n store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__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_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_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 store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(memPtr) {\n\n mstore(add(memPtr, 0), \"The length of two array should b\")\n\n mstore(add(memPtr, 32), \"e the same\")\n\n }\n\n function abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__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_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(memPtr) {\n\n mstore(add(memPtr, 0), \"The value is not sufficient or e\")\n\n mstore(add(memPtr, 32), \"xceed\")\n\n }\n\n function abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__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_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\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 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 checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "60806040526004361061003f5760003560e01c80635516191314610044578063893d20e81461004e578063a6f9dae114610079578063c0722f37146100a2575b600080fd5b61004c6100be565b005b34801561005a57600080fd5b50610063610167565b604051610070919061051a565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b9190610575565b610190565b005b6100bc60048036038101906100b79190610832565b6102db565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014390610907565b60405180910390fd5b346001600082825461015e9190610956565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461021e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161021590610907565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b34600160008282546102ed9190610956565b925050819055508051825114610338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032f90610a1e565b60405180910390fd5b600061034382610420565b905080600154101561038a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038190610ab0565b60405180910390fd5b60005b835181101561041a578281815181106103a9576103a8610ad0565b5b6020026020010151600160008282546103c29190610aff565b925050819055506104078482815181106103df576103de610ad0565b5b60200260200101518483815181106103fa576103f9610ad0565b5b6020026020010151610478565b808061041290610b33565b91505061038d565b50505050565b6000806000905060005b835181101561046e5783818151811061044657610445610ad0565b5b6020026020010151826104599190610956565b9150808061046690610b33565b91505061042a565b5080915050919050565b670de0b6b3a76400008161048c9190610b7b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156104d4573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610504826104d9565b9050919050565b610514816104f9565b82525050565b600060208201905061052f600083018461050b565b92915050565b6000604051905090565b600080fd5b600080fd5b610552816104f9565b811461055d57600080fd5b50565b60008135905061056f81610549565b92915050565b60006020828403121561058b5761058a61053f565b5b600061059984828501610560565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6105f0826105a7565b810181811067ffffffffffffffff8211171561060f5761060e6105b8565b5b80604052505050565b6000610622610535565b905061062e82826105e7565b919050565b600067ffffffffffffffff82111561064e5761064d6105b8565b5b602082029050602081019050919050565b600080fd5b600061066f826104d9565b9050919050565b61067f81610664565b811461068a57600080fd5b50565b60008135905061069c81610676565b92915050565b60006106b56106b084610633565b610618565b905080838252602082019050602084028301858111156106d8576106d761065f565b5b835b8181101561070157806106ed888261068d565b8452602084019350506020810190506106da565b5050509392505050565b600082601f8301126107205761071f6105a2565b5b81356107308482602086016106a2565b91505092915050565b600067ffffffffffffffff821115610754576107536105b8565b5b602082029050602081019050919050565b6000819050919050565b61077881610765565b811461078357600080fd5b50565b6000813590506107958161076f565b92915050565b60006107ae6107a984610739565b610618565b905080838252602082019050602084028301858111156107d1576107d061065f565b5b835b818110156107fa57806107e68882610786565b8452602084019350506020810190506107d3565b5050509392505050565b600082601f830112610819576108186105a2565b5b813561082984826020860161079b565b91505092915050565b600080604083850312156108495761084861053f565b5b600083013567ffffffffffffffff81111561086757610866610544565b5b6108738582860161070b565b925050602083013567ffffffffffffffff81111561089457610893610544565b5b6108a085828601610804565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006108f16013836108aa565b91506108fc826108bb565b602082019050919050565b60006020820190508181036000830152610920816108e4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061096182610765565b915061096c83610765565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156109a1576109a0610927565b5b828201905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610a08602a836108aa565b9150610a13826109ac565b604082019050919050565b60006020820190508181036000830152610a37816109fb565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610a9a6025836108aa565b9150610aa582610a3e565b604082019050919050565b60006020820190508181036000830152610ac981610a8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610b0a82610765565b9150610b1583610765565b925082821015610b2857610b27610927565b5b828203905092915050565b6000610b3e82610765565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610b7057610b6f610927565b5b600182019050919050565b6000610b8682610765565b9150610b9183610765565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610bca57610bc9610927565b5b82820290509291505056fea2646970667358221220ac93684805ae5ea3cc60dbf6dbe2c170b17d160ccfbfb391a59c27ae6fe3bfc764736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x44 JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x4E JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0x79 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xA2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4C PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x63 PUSH2 0x167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70 SWAP2 SWAP1 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9B SWAP2 SWAP1 PUSH2 0x575 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x832 JUMP JUMPDEST PUSH2 0x2DB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x143 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15E SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x21E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x215 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2ED SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32F SWAP1 PUSH2 0xA1E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x343 DUP3 PUSH2 0x420 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x38A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x381 SWAP1 PUSH2 0xAB0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x41A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x3A9 JUMPI PUSH2 0x3A8 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0xAFF JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x407 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3DF JUMPI PUSH2 0x3DE PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3FA JUMPI PUSH2 0x3F9 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x478 JUMP JUMPDEST DUP1 DUP1 PUSH2 0x412 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x38D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x46E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x446 JUMPI PUSH2 0x445 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x459 SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x466 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x42A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x48C SWAP2 SWAP1 PUSH2 0xB7B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x4D4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x514 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x52F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x50B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x552 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP2 EQ PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x56F DUP2 PUSH2 0x549 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58B JUMPI PUSH2 0x58A PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x599 DUP5 DUP3 DUP6 ADD PUSH2 0x560 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x5F0 DUP3 PUSH2 0x5A7 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x60F JUMPI PUSH2 0x60E PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x622 PUSH2 0x535 JUMP JUMPDEST SWAP1 POP PUSH2 0x62E DUP3 DUP3 PUSH2 0x5E7 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x64E JUMPI PUSH2 0x64D PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x66F DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x67F DUP2 PUSH2 0x664 JUMP JUMPDEST DUP2 EQ PUSH2 0x68A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x69C DUP2 PUSH2 0x676 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B5 PUSH2 0x6B0 DUP5 PUSH2 0x633 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6D8 JUMPI PUSH2 0x6D7 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x701 JUMPI DUP1 PUSH2 0x6ED DUP9 DUP3 PUSH2 0x68D JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6DA JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x720 JUMPI PUSH2 0x71F PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x730 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x754 JUMPI PUSH2 0x753 PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x778 DUP2 PUSH2 0x765 JUMP JUMPDEST DUP2 EQ PUSH2 0x783 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x795 DUP2 PUSH2 0x76F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AE PUSH2 0x7A9 DUP5 PUSH2 0x739 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7D1 JUMPI PUSH2 0x7D0 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x7FA JUMPI DUP1 PUSH2 0x7E6 DUP9 DUP3 PUSH2 0x786 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7D3 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x819 JUMPI PUSH2 0x818 PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x829 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x79B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x849 JUMPI PUSH2 0x848 PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x866 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x873 DUP6 DUP3 DUP7 ADD PUSH2 0x70B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x893 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x8A0 DUP6 DUP3 DUP7 ADD PUSH2 0x804 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F1 PUSH1 0x13 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0x8FC DUP3 PUSH2 0x8BB 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 PUSH2 0x920 DUP2 PUSH2 0x8E4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x961 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0x96C DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x9A1 JUMPI PUSH2 0x9A0 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA08 PUSH1 0x2A DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xA13 DUP3 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xA37 DUP2 PUSH2 0x9FB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9A PUSH1 0x25 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xAA5 DUP3 PUSH2 0xA3E JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xAC9 DUP2 PUSH2 0xA8D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xB0A DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB15 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xB28 JUMPI PUSH2 0xB27 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xB70 JUMPI PUSH2 0xB6F PUSH2 0x927 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB86 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB91 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xBCA JUMPI PUSH2 0xBC9 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xAC SWAP4 PUSH9 0x4805AE5EA3CC60DBF6 0xDB 0xE2 0xC1 PUSH17 0xB17D160CCFBFB391A59C27AE6FE3BFC764 PUSH20 0x6F6C634300080F00330000000000000000000000 ",
"sourceMap": "68:3917:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1830:143;;;:::i;:::-;;1666:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1437:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2933:1043;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1830:143;938:5;;;;;;;;;;924:19;;:10;:19;;;916:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1956:9:::1;1941:11;;:24;;;;;;;:::i;:::-;;;;;;;;1830:143::o:0;1666:83::-;1709:7;1736:5;;;;;;;;;;;1729:12;;1666:83;:::o;1437:131::-;938:5;;;;;;;;;;924:19;;:10;:19;;;916:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1523:8:::1;1507:25;;1516:5;::::0;::::1;;;;;;;;1507:25;;;;;;;;;;;;1551:8;1543:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;1437:131:::0;:::o;2933:1043::-;3170:9;3155:11;;:24;;;;;;;:::i;:::-;;;;;;;;3287:5;:12;3271:5;:12;:28;3263:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;3466:14;3483:10;3487:5;3483:3;:10::i;:::-;3466:27;;3537:9;3522:11;;:24;;3514:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;3624:6;3619:350;3638:5;:12;3634:1;:16;3619:350;;;3830:5;3836:1;3830:8;;;;;;;;:::i;:::-;;;;;;;;3815:11;;:23;;;;;;;:::i;:::-;;;;;;;;3926:31;3938:5;3944:1;3938:8;;;;;;;;:::i;:::-;;;;;;;;3948:5;3954:1;3948:8;;;;;;;;:::i;:::-;;;;;;;;3926:11;:31::i;:::-;3652:3;;;;;:::i;:::-;;;;3619:350;;;;3021:955;2933:1043;;:::o;2057:321::-;2115:11;2205:14;2222:1;2205:18;;2249:6;2244:90;2263:7;:14;2259:1;:18;2244:90;;;2312:7;2320:1;2312:10;;;;;;;;:::i;:::-;;;;;;;;2299:23;;;;;:::i;:::-;;;2279:3;;;;;:::i;:::-;;;;2244:90;;;;2361:9;2354:16;;;2057:321;;;:::o;2441:176::-;2544:19;2530:33;;;;;:::i;:::-;;;2574:12;:21;;:35;2596:12;2574:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2441:176;;:::o;7:126:1:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;593:75::-;626:6;659:2;653:9;643:19;;593:75;:::o;674:117::-;783:1;780;773:12;797:117;906:1;903;896:12;920:122;993:24;1011:5;993:24;:::i;:::-;986:5;983:35;973:63;;1032:1;1029;1022:12;973:63;920:122;:::o;1048:139::-;1094:5;1132:6;1119:20;1110:29;;1148:33;1175:5;1148:33;:::i;:::-;1048:139;;;;:::o;1193:329::-;1252:6;1301:2;1289:9;1280:7;1276:23;1272:32;1269:119;;;1307:79;;:::i;:::-;1269:119;1427:1;1452:53;1497:7;1488:6;1477:9;1473:22;1452:53;:::i;:::-;1442:63;;1398:117;1193:329;;;;:::o;1528:117::-;1637:1;1634;1627:12;1651:102;1692:6;1743:2;1739:7;1734:2;1727:5;1723:14;1719:28;1709:38;;1651:102;;;:::o;1759:180::-;1807:77;1804:1;1797:88;1904:4;1901:1;1894:15;1928:4;1925:1;1918:15;1945:281;2028:27;2050:4;2028:27;:::i;:::-;2020:6;2016:40;2158:6;2146:10;2143:22;2122:18;2110:10;2107:34;2104:62;2101:88;;;2169:18;;:::i;:::-;2101:88;2209:10;2205:2;2198:22;1988:238;1945:281;;:::o;2232:129::-;2266:6;2293:20;;:::i;:::-;2283:30;;2322:33;2350:4;2342:6;2322:33;:::i;:::-;2232:129;;;:::o;2367:319::-;2452:4;2542:18;2534:6;2531:30;2528:56;;;2564:18;;:::i;:::-;2528:56;2614:4;2606:6;2602:17;2594:25;;2674:4;2668;2664:15;2656:23;;2367:319;;;:::o;2692:117::-;2801:1;2798;2791:12;2815:104;2860:7;2889:24;2907:5;2889:24;:::i;:::-;2878:35;;2815:104;;;:::o;2925:138::-;3006:32;3032:5;3006:32;:::i;:::-;2999:5;2996:43;2986:71;;3053:1;3050;3043:12;2986:71;2925:138;:::o;3069:155::-;3123:5;3161:6;3148:20;3139:29;;3177:41;3212:5;3177:41;:::i;:::-;3069:155;;;;:::o;3255:734::-;3359:5;3384:89;3400:72;3465:6;3400:72;:::i;:::-;3384:89;:::i;:::-;3375:98;;3493:5;3522:6;3515:5;3508:21;3556:4;3549:5;3545:16;3538:23;;3609:4;3601:6;3597:17;3589:6;3585:30;3638:3;3630:6;3627:15;3624:122;;;3657:79;;:::i;:::-;3624:122;3772:6;3755:228;3789:6;3784:3;3781:15;3755:228;;;3864:3;3893:45;3934:3;3922:10;3893:45;:::i;:::-;3888:3;3881:58;3968:4;3963:3;3959:14;3952:21;;3831:152;3815:4;3810:3;3806:14;3799:21;;3755:228;;;3759:21;3365:624;;3255:734;;;;;:::o;4020:386::-;4099:5;4148:3;4141:4;4133:6;4129:17;4125:27;4115:122;;4156:79;;:::i;:::-;4115:122;4273:6;4260:20;4298:102;4396:3;4388:6;4381:4;4373:6;4369:17;4298:102;:::i;:::-;4289:111;;4105:301;4020:386;;;;:::o;4412:311::-;4489:4;4579:18;4571:6;4568:30;4565:56;;;4601:18;;:::i;:::-;4565:56;4651:4;4643:6;4639:17;4631:25;;4711:4;4705;4701:15;4693:23;;4412:311;;;:::o;4729:77::-;4766:7;4795:5;4784:16;;4729:77;;;:::o;4812:122::-;4885:24;4903:5;4885:24;:::i;:::-;4878:5;4875:35;4865:63;;4924:1;4921;4914:12;4865:63;4812:122;:::o;4940:139::-;4986:5;5024:6;5011:20;5002:29;;5040:33;5067:5;5040:33;:::i;:::-;4940:139;;;;:::o;5102:710::-;5198:5;5223:81;5239:64;5296:6;5239:64;:::i;:::-;5223:81;:::i;:::-;5214:90;;5324:5;5353:6;5346:5;5339:21;5387:4;5380:5;5376:16;5369:23;;5440:4;5432:6;5428:17;5420:6;5416:30;5469:3;5461:6;5458:15;5455:122;;;5488:79;;:::i;:::-;5455:122;5603:6;5586:220;5620:6;5615:3;5612:15;5586:220;;;5695:3;5724:37;5757:3;5745:10;5724:37;:::i;:::-;5719:3;5712:50;5791:4;5786:3;5782:14;5775:21;;5662:144;5646:4;5641:3;5637:14;5630:21;;5586:220;;;5590:21;5204:608;;5102:710;;;;;:::o;5835:370::-;5906:5;5955:3;5948:4;5940:6;5936:17;5932:27;5922:122;;5963:79;;:::i;:::-;5922:122;6080:6;6067:20;6105:94;6195:3;6187:6;6180:4;6172:6;6168:17;6105:94;:::i;:::-;6096:103;;5912:293;5835:370;;;;:::o;6211:910::-;6337:6;6345;6394:2;6382:9;6373:7;6369:23;6365:32;6362:119;;;6400:79;;:::i;:::-;6362:119;6548:1;6537:9;6533:17;6520:31;6578:18;6570:6;6567:30;6564:117;;;6600:79;;:::i;:::-;6564:117;6705:86;6783:7;6774:6;6763:9;6759:22;6705:86;:::i;:::-;6695:96;;6491:310;6868:2;6857:9;6853:18;6840:32;6899:18;6891:6;6888:30;6885:117;;;6921:79;;:::i;:::-;6885:117;7026:78;7096:7;7087:6;7076:9;7072:22;7026:78;:::i;:::-;7016:88;;6811:303;6211:910;;;;;:::o;7127:169::-;7211:11;7245:6;7240:3;7233:19;7285:4;7280:3;7276:14;7261:29;;7127:169;;;;:::o;7302:::-;7442:21;7438:1;7430:6;7426:14;7419:45;7302:169;:::o;7477:366::-;7619:3;7640:67;7704:2;7699:3;7640:67;:::i;:::-;7633:74;;7716:93;7805:3;7716:93;:::i;:::-;7834:2;7829:3;7825:12;7818:19;;7477:366;;;:::o;7849:419::-;8015:4;8053:2;8042:9;8038:18;8030:26;;8102:9;8096:4;8092:20;8088:1;8077:9;8073:17;8066:47;8130:131;8256:4;8130:131;:::i;:::-;8122:139;;7849:419;;;:::o;8274:180::-;8322:77;8319:1;8312:88;8419:4;8416:1;8409:15;8443:4;8440:1;8433:15;8460:305;8500:3;8519:20;8537:1;8519:20;:::i;:::-;8514:25;;8553:20;8571:1;8553:20;:::i;:::-;8548:25;;8707:1;8639:66;8635:74;8632:1;8629:81;8626:107;;;8713:18;;:::i;:::-;8626:107;8757:1;8754;8750:9;8743:16;;8460:305;;;;:::o;8771:229::-;8911:34;8907:1;8899:6;8895:14;8888:58;8980:12;8975:2;8967:6;8963:15;8956:37;8771:229;:::o;9006:366::-;9148:3;9169:67;9233:2;9228:3;9169:67;:::i;:::-;9162:74;;9245:93;9334:3;9245:93;:::i;:::-;9363:2;9358:3;9354:12;9347:19;;9006:366;;;:::o;9378:419::-;9544:4;9582:2;9571:9;9567:18;9559:26;;9631:9;9625:4;9621:20;9617:1;9606:9;9602:17;9595:47;9659:131;9785:4;9659:131;:::i;:::-;9651:139;;9378:419;;;:::o;9803:224::-;9943:34;9939:1;9931:6;9927:14;9920:58;10012:7;10007:2;9999:6;9995:15;9988:32;9803:224;:::o;10033:366::-;10175:3;10196:67;10260:2;10255:3;10196:67;:::i;:::-;10189:74;;10272:93;10361:3;10272:93;:::i;:::-;10390:2;10385:3;10381:12;10374:19;;10033:366;;;:::o;10405:419::-;10571:4;10609:2;10598:9;10594:18;10586:26;;10658:9;10652:4;10648:20;10644:1;10633:9;10629:17;10622:47;10686:131;10812:4;10686:131;:::i;:::-;10678:139;;10405:419;;;:::o;10830:180::-;10878:77;10875:1;10868:88;10975:4;10972:1;10965:15;10999:4;10996:1;10989:15;11016:191;11056:4;11076:20;11094:1;11076:20;:::i;:::-;11071:25;;11110:20;11128:1;11110:20;:::i;:::-;11105:25;;11149:1;11146;11143:8;11140:34;;;11154:18;;:::i;:::-;11140:34;11199:1;11196;11192:9;11184:17;;11016:191;;;;:::o;11213:233::-;11252:3;11275:24;11293:5;11275:24;:::i;:::-;11266:33;;11321:66;11314:5;11311:77;11308:103;;11391:18;;:::i;:::-;11308:103;11438:1;11431:5;11427:13;11420:20;;11213:233;;;:::o;11452:348::-;11492:7;11515:20;11533:1;11515:20;:::i;:::-;11510:25;;11549:20;11567:1;11549:20;:::i;:::-;11544:25;;11737:1;11669:66;11665:74;11662:1;11659:81;11654:1;11647:9;11640:17;11636:105;11633:131;;;11744:18;;:::i;:::-;11633:131;11792:1;11789;11785:9;11774:20;;11452:348;;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "616600",
"executionCost": "50684",
"totalCost": "667284"
},
"external": {
"changeOwner(address)": "30589",
"charge()": "infinite",
"getOwner()": "2522",
"withdrawls(address[],uint256[])": "infinite"
},
"internal": {
"nodePayment(address payable,uint256)": "infinite",
"sum(uint256[] memory)": "infinite",
"userPayment(address payable,uint256)": "infinite"
}
},
"methodIdentifiers": {
"changeOwner(address)": "a6f9dae1",
"charge()": "55161913",
"getOwner()": "893d20e8",
"withdrawls(address[],uint256[])": "c0722f37"
}
},
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "charge",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "getOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "addrs",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amnts",
"type": "uint256[]"
}
],
"name": "withdrawls",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
]
}
{
"compiler": {
"version": "0.8.15+commit.e14f2714"
},
"language": "Solidity",
"output": {
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "charge",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "getOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "addrs",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amnts",
"type": "uint256[]"
}
],
"name": "withdrawls",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"constructor": {
"details": "Set contract deployer as owner"
},
"getOwner()": {
"details": "Return owner address ",
"returns": {
"_0": "address of owner"
}
}
},
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
},
"settings": {
"compilationTarget": {
"contracts/AllPayment.sol": "MultiSend"
},
"evmVersion": "london",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
},
"sources": {
"contracts/AllPayment.sol": {
"keccak256": "0x55fc1f71ebbbfb59ae72da8b8214decbf093a58982406dcff9d353b3e5117562",
"license": "MIT",
"urls": [
"bzz-raw://6c101b69eaff8491195d36bfa1711725f34fb40b041dfd174ba29585adadfd92",
"dweb:/ipfs/QmS7Z5k4CueVz36UgwS2LJ1wxUyMv6nJNnXUiok437kYHB"
]
}
},
"version": 1
}
pragma solidity 0.6.0;
import "@openzeppelin/contracts/math/SafeMath.sol";
contract BasicMetaTransaction {
using SafeMath for uint256;
event MetaTransactionExecuted(address userAddress, address payable relayerAddress, bytes functionSignature);
mapping(address => uint256) private nonces;
function getChainID() public pure returns (uint256) {
uint256 id;
assembly {
id := chainid()
}
return id;
}
/**
* Main function to be called when user wants to execute meta transaction.
* The actual function to be called should be passed as param with name functionSignature
* Here the basic signature recovery is being used. Signature is expected to be generated using
* personal_sign method.
* @param userAddress Address of user trying to do meta transaction
* @param functionSignature Signature of the actual function to be called via meta transaction
* @param sigR R part of the signature
* @param sigS S part of the signature
* @param sigV V part of the signature
*/
function executeMetaTransaction(address userAddress, bytes memory functionSignature,
bytes32 sigR, bytes32 sigS, uint8 sigV) public payable returns(bytes memory) {
require(verify(userAddress, nonces[userAddress], getChainID(), functionSignature, sigR, sigS, sigV), "Signer and signature do not match");
nonces[userAddress] = nonces[userAddress].add(1);
// Append userAddress at the end to extract it from calling context
(bool success, bytes memory returnData) = address(this).call(abi.encodePacked(functionSignature, userAddress));
require(success, "Function call not successful");
emit MetaTransactionExecuted(userAddress, payable(msg.sender), functionSignature);
return returnData;
}
function getNonce(address user) external view returns(uint256 nonce) {
nonce = nonces[user];
}
// Builds a prefixed hash to mimic the behavior of eth_sign.
function prefixed(bytes32 hash) internal pure returns (bytes32) {
return keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", hash));
}
function verify(address owner, uint256 nonce, uint256 chainID, bytes memory functionSignature,
bytes32 sigR, bytes32 sigS, uint8 sigV) public view returns (bool) {
bytes32 hash = prefixed(keccak256(abi.encodePacked(nonce, this, chainID, functionSignature)));
address signer = ecrecover(hash, sigV, sigR, sigS);
require(signer != address(0), "Invalid signature");
return (owner == signer);
}
function msgSender() internal view returns(address sender) {
if(msg.sender == address(this)) {
bytes memory array = msg.data;
uint256 index = msg.data.length;
assembly {
// Load the 32 bytes word from memory with the address on the lower 20 bytes, and mask those.
sender := and(mload(add(array, index)), 0xffffffffffffffffffffffffffffffffffffffff)
}
} else {
return msg.sender;
}
}
}
// SPDX-License-Identifier: MIT
pragma solidity 0.6.0;
import "@openzeppelin/contracts/utils/Counters.sol";
// import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/release-v3.0.0/contracts/utils/Counters.sol";
import "./BasicMetaTransaction.sol";
contract Payment is BasicMetaTransaction{
using Counters for Counters.Counter;
Counters.Counter public totalUser;
address public Owner;
struct users{
address userAdd;
uint256 amount;
bool paid;
}
struct nodes{
address nodeAdd;
uint256 amount;
bool paid;
}
mapping (address => users) private userDetails;
mapping (address => nodes) private nodeDetails;
uint256 public price = 1 ether;
constructor () public{
Owner = msg.sender;
}
modifier onlyOwner {
require(msg.sender == Owner);
_;
}
function userPayment(address payable _userAdd, uint256 _amount) public payable {
_userAdd.transfer(_amount*price);
userDetails[_userAdd].userAdd = _userAdd;
userDetails[_userAdd].amount = _amount;
userDetails[_userAdd].paid = true;
totalUser.increment();
// return userDetails[_userAdd].paid;
}
function nodePayment(address payable _nodeAdd, uint256 _amount) public payable onlyOwner returns(bool) {
_nodeAdd.transfer(_amount*price);
nodeDetails[_nodeAdd].nodeAdd = _nodeAdd;
nodeDetails[_nodeAdd].amount = _amount;
nodeDetails[_nodeAdd].paid = true;
totalUser.increment();
return nodeDetails[_nodeAdd].paid;
}
}
This file has been truncated, but you can view the full file.
{
"id": "2b5c29cb8dad5511e4bc02ebb8553fdf",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.15",
"solcLongVersion": "0.8.15+commit.e14f2714",
"input": {
"language": "Solidity",
"sources": {
"contracts/AllPayment.sol": {
"content": "// SPDX-License-Identifier: MIT\r\npragma solidity >=0.7.0 <0.9.0;\r\n\r\ncontract AllPayment {\r\n \r\n // to save the owner of the contract in construction\r\n address private owner;\r\n \r\n // to save the amount of ethers in the smart-contract\r\n uint total_value;\r\n \r\n \r\n // event for EVM logging\r\n event OwnerSet(address indexed oldOwner, address indexed newOwner);\r\n \r\n \r\n // modifier to check if the caller is owner\r\n modifier isOwner() {\r\n // If the first argument of 'require' evaluates to 'false', execution terminates and all\r\n // changes to the state and to Ether balances are reverted.\r\n // This used to consume all gas in old EVM versions, but not anymore.\r\n // It is often a good idea to use 'require' to check if functions are called correctly.\r\n // As a second argument, you can also provide an explanation about what went wrong.\r\n require(msg.sender == owner, \"Caller is not owner\");\r\n _;\r\n }\r\n \r\n /**\r\n * @dev Set contract deployer as owner\r\n */\r\n constructor() payable{\r\n owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor\r\n emit OwnerSet(address(0), owner);\r\n \r\n total_value = msg.value; // msg.value is the ethers of the transaction\r\n }\r\n \r\n // the owner of the smart-contract can chage its owner to whoever \r\n // he/she wants\r\n function changeOwner(address newOwner) public isOwner {\r\n emit OwnerSet(owner, newOwner);\r\n owner = newOwner; \r\n }\r\n \r\n /**\r\n * @dev Return owner address \r\n * @return address of owner\r\n */\r\n function getOwner() external view returns (address) {\r\n return owner;\r\n }\r\n \r\n // charge enable the owner to store ether in the smart-contract\r\n function charge() payable public isOwner {\r\n // adding the message value to the smart contract\r\n total_value += msg.value;\r\n }\r\n \r\n // sum adds the different elements of the array and return its sum\r\n function sum(uint[] memory amounts) private pure returns (uint retVal) {\r\n // the value of message should be exact of total amounts\r\n uint totalAmnt = 0;\r\n \r\n for (uint i=0; i < amounts.length; i++) {\r\n totalAmnt += amounts[i];\r\n }\r\n \r\n return totalAmnt;\r\n }\r\n \r\n // withdraw perform the transfering of ethers\r\n function nodePayment(address payable receiverAddr, uint receiverAmnt) private {\r\n receiverAmnt*=1000000000000000000;\r\n receiverAddr.transfer(receiverAmnt);\r\n }\r\n\r\n function userPayment(address payable receiverAddr, uint receiverAmnt) private {\r\n receiverAmnt*=1000000000000000000;\r\n receiverAddr.transfer(receiverAmnt);\r\n }\r\n \r\n // withdrawls enable to multiple withdraws to different accounts\r\n // at one call, and decrease the network fee\r\n function withdrawls(address payable[] memory addrs, uint[] memory amnts) payable public {\r\n \r\n // first of all, add the value of the transaction to the total_value \r\n // of the smart-contract\r\n total_value += msg.value;\r\n \r\n // the addresses and amounts should be same in length\r\n require(addrs.length == amnts.length, \"The length of two array should be the same\");\r\n \r\n // the value of the message in addition to sotred value should be more than total amounts\r\n uint totalAmnt = sum(amnts);\r\n \r\n require(total_value >= totalAmnt, \"The value is not sufficient or exceed\");\r\n \r\n \r\n for (uint i=0; i < addrs.length; i++) {\r\n // first subtract the transferring amount from the total_value\r\n // of the smart-contract then send it to the receiver\r\n total_value -= amnts[i];\r\n \r\n // send the specified amount to the recipient\r\n nodePayment(addrs[i], amnts[i]);\r\n }\r\n }\r\n \r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/AllPayment.sol": {
"AllPayment": {
"abi": [
{
"inputs": [],
"stateMutability": "payable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnerSet",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "changeOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "charge",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [],
"name": "getOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable[]",
"name": "addrs",
"type": "address[]"
},
{
"internalType": "uint256[]",
"name": "amnts",
"type": "uint256[]"
}
],
"name": "withdrawls",
"outputs": [],
"stateMutability": "payable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"constructor": {
"details": "Set contract deployer as owner"
},
"getOwner()": {
"details": "Return owner address ",
"returns": {
"_0": "address of owner"
}
}
},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/AllPayment.sol\":68:3986 contract AllPayment {... */\n mstore(0x40, 0x80)\n /* \"contracts/AllPayment.sol\":1102:1112 msg.sender */\n caller\n /* \"contracts/AllPayment.sol\":1094:1099 owner */\n 0x00\n dup1\n /* \"contracts/AllPayment.sol\":1094:1112 owner = msg.sender */\n 0x0100\n exp\n dup2\n sload\n dup2\n 0xffffffffffffffffffffffffffffffffffffffff\n mul\n not\n and\n swap1\n dup4\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":1228:1233 owner */\n 0x00\n dup1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":1207:1234 OwnerSet(address(0), owner) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":1224:1225 0 */\n 0x00\n /* \"contracts/AllPayment.sol\":1207:1234 OwnerSet(address(0), owner) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"contracts/AllPayment.sol\":1269:1278 msg.value */\n callvalue\n /* \"contracts/AllPayment.sol\":1255:1266 total_value */\n 0x01\n /* \"contracts/AllPayment.sol\":1255:1278 total_value = msg.value */\n dup2\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":68:3986 contract AllPayment {... */\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/AllPayment.sol\":68:3986 contract AllPayment {... */\n mstore(0x40, 0x80)\n jumpi(tag_1, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x55161913\n eq\n tag_2\n jumpi\n dup1\n 0x893d20e8\n eq\n tag_3\n jumpi\n dup1\n 0xa6f9dae1\n eq\n tag_4\n jumpi\n dup1\n 0xc0722f37\n eq\n tag_5\n jumpi\n tag_1:\n 0x00\n dup1\n revert\n /* \"contracts/AllPayment.sol\":1831:1974 function charge() payable public isOwner {... */\n tag_2:\n tag_6\n tag_7\n jump\t// in\n tag_6:\n stop\n /* \"contracts/AllPayment.sol\":1667:1750 function getOwner() external view returns (address) {... */\n tag_3:\n callvalue\n dup1\n iszero\n tag_8\n jumpi\n 0x00\n dup1\n revert\n tag_8:\n pop\n tag_9\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n tag_11\n swap2\n swap1\n tag_12\n jump\t// in\n tag_11:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/AllPayment.sol\":1438:1569 function changeOwner(address newOwner) public isOwner {... */\n tag_4:\n callvalue\n dup1\n iszero\n tag_13\n jumpi\n 0x00\n dup1\n revert\n tag_13:\n pop\n tag_14\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_15\n swap2\n swap1\n tag_16\n jump\t// in\n tag_15:\n tag_17\n jump\t// in\n tag_14:\n stop\n /* \"contracts/AllPayment.sol\":2934:3977 function withdrawls(address payable[] memory addrs, uint[] memory amnts) payable public {... */\n tag_5:\n tag_18\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_19\n swap2\n swap1\n tag_20\n jump\t// in\n tag_19:\n tag_21\n jump\t// in\n tag_18:\n stop\n /* \"contracts/AllPayment.sol\":1831:1974 function charge() payable public isOwner {... */\n tag_7:\n /* \"contracts/AllPayment.sol\":939:944 owner */\n 0x00\n dup1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":925:944 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":925:935 msg.sender */\n caller\n /* \"contracts/AllPayment.sol\":925:944 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n eq\n /* \"contracts/AllPayment.sol\":917:968 require(msg.sender == owner, \"Caller is not owner\") */\n tag_23\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_24\n swap1\n tag_25\n jump\t// in\n tag_24:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_23:\n /* \"contracts/AllPayment.sol\":1957:1966 msg.value */\n callvalue\n /* \"contracts/AllPayment.sol\":1942:1953 total_value */\n 0x01\n 0x00\n /* \"contracts/AllPayment.sol\":1942:1966 total_value += msg.value */\n dup3\n dup3\n sload\n tag_27\n swap2\n swap1\n tag_28\n jump\t// in\n tag_27:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":1831:1974 function charge() payable public isOwner {... */\n jump\t// out\n /* \"contracts/AllPayment.sol\":1667:1750 function getOwner() external view returns (address) {... */\n tag_10:\n /* \"contracts/AllPayment.sol\":1710:1717 address */\n 0x00\n /* \"contracts/AllPayment.sol\":1737:1742 owner */\n dup1\n 0x00\n swap1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":1730:1742 return owner */\n swap1\n pop\n /* \"contracts/AllPayment.sol\":1667:1750 function getOwner() external view returns (address) {... */\n swap1\n jump\t// out\n /* \"contracts/AllPayment.sol\":1438:1569 function changeOwner(address newOwner) public isOwner {... */\n tag_17:\n /* \"contracts/AllPayment.sol\":939:944 owner */\n 0x00\n dup1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":925:944 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":925:935 msg.sender */\n caller\n /* \"contracts/AllPayment.sol\":925:944 msg.sender == owner */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n eq\n /* \"contracts/AllPayment.sol\":917:968 require(msg.sender == owner, \"Caller is not owner\") */\n tag_31\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_32\n swap1\n tag_25\n jump\t// in\n tag_32:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_31:\n /* \"contracts/AllPayment.sol\":1524:1532 newOwner */\n dup1\n /* \"contracts/AllPayment.sol\":1508:1533 OwnerSet(owner, newOwner) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":1517:1522 owner */\n 0x00\n dup1\n sload\n swap1\n 0x0100\n exp\n swap1\n div\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":1508:1533 OwnerSet(owner, newOwner) */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n 0x342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a735\n mload(0x40)\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log3\n /* \"contracts/AllPayment.sol\":1552:1560 newOwner */\n dup1\n /* \"contracts/AllPayment.sol\":1544:1549 owner */\n 0x00\n dup1\n /* \"contracts/AllPayment.sol\":1544:1560 owner = newOwner */\n 0x0100\n exp\n dup2\n sload\n dup2\n 0xffffffffffffffffffffffffffffffffffffffff\n mul\n not\n and\n swap1\n dup4\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n mul\n or\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":1438:1569 function changeOwner(address newOwner) public isOwner {... */\n pop\n jump\t// out\n /* \"contracts/AllPayment.sol\":2934:3977 function withdrawls(address payable[] memory addrs, uint[] memory amnts) payable public {... */\n tag_21:\n /* \"contracts/AllPayment.sol\":3171:3180 msg.value */\n callvalue\n /* \"contracts/AllPayment.sol\":3156:3167 total_value */\n 0x01\n 0x00\n /* \"contracts/AllPayment.sol\":3156:3180 total_value += msg.value */\n dup3\n dup3\n sload\n tag_35\n swap2\n swap1\n tag_28\n jump\t// in\n tag_35:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":3288:3293 amnts */\n dup1\n /* \"contracts/AllPayment.sol\":3288:3300 amnts.length */\n mload\n /* \"contracts/AllPayment.sol\":3272:3277 addrs */\n dup3\n /* \"contracts/AllPayment.sol\":3272:3284 addrs.length */\n mload\n /* \"contracts/AllPayment.sol\":3272:3300 addrs.length == amnts.length */\n eq\n /* \"contracts/AllPayment.sol\":3264:3347 require(addrs.length == amnts.length, \"The length of two array should be the same\") */\n tag_36\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_37\n swap1\n tag_38\n jump\t// in\n tag_37:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_36:\n /* \"contracts/AllPayment.sol\":3467:3481 uint totalAmnt */\n 0x00\n /* \"contracts/AllPayment.sol\":3484:3494 sum(amnts) */\n tag_39\n /* \"contracts/AllPayment.sol\":3488:3493 amnts */\n dup3\n /* \"contracts/AllPayment.sol\":3484:3487 sum */\n tag_40\n /* \"contracts/AllPayment.sol\":3484:3494 sum(amnts) */\n jump\t// in\n tag_39:\n /* \"contracts/AllPayment.sol\":3467:3494 uint totalAmnt = sum(amnts) */\n swap1\n pop\n /* \"contracts/AllPayment.sol\":3538:3547 totalAmnt */\n dup1\n /* \"contracts/AllPayment.sol\":3523:3534 total_value */\n sload(0x01)\n /* \"contracts/AllPayment.sol\":3523:3547 total_value >= totalAmnt */\n lt\n iszero\n /* \"contracts/AllPayment.sol\":3515:3589 require(total_value >= totalAmnt, \"The value is not sufficient or exceed\") */\n tag_41\n jumpi\n mload(0x40)\n 0x08c379a000000000000000000000000000000000000000000000000000000000\n dup2\n mstore\n 0x04\n add\n tag_42\n swap1\n tag_43\n jump\t// in\n tag_42:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n revert\n tag_41:\n /* \"contracts/AllPayment.sol\":3625:3631 uint i */\n 0x00\n /* \"contracts/AllPayment.sol\":3620:3970 for (uint i=0; i < addrs.length; i++) {... */\n tag_44:\n /* \"contracts/AllPayment.sol\":3639:3644 addrs */\n dup4\n /* \"contracts/AllPayment.sol\":3639:3651 addrs.length */\n mload\n /* \"contracts/AllPayment.sol\":3635:3636 i */\n dup2\n /* \"contracts/AllPayment.sol\":3635:3651 i < addrs.length */\n lt\n /* \"contracts/AllPayment.sol\":3620:3970 for (uint i=0; i < addrs.length; i++) {... */\n iszero\n tag_45\n jumpi\n /* \"contracts/AllPayment.sol\":3831:3836 amnts */\n dup3\n /* \"contracts/AllPayment.sol\":3837:3838 i */\n dup2\n /* \"contracts/AllPayment.sol\":3831:3839 amnts[i] */\n dup2\n mload\n dup2\n lt\n tag_47\n jumpi\n tag_48\n tag_49\n jump\t// in\n tag_48:\n tag_47:\n 0x20\n mul\n 0x20\n add\n add\n mload\n /* \"contracts/AllPayment.sol\":3816:3827 total_value */\n 0x01\n 0x00\n /* \"contracts/AllPayment.sol\":3816:3839 total_value -= amnts[i] */\n dup3\n dup3\n sload\n tag_50\n swap2\n swap1\n tag_51\n jump\t// in\n tag_50:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"contracts/AllPayment.sol\":3927:3958 nodePayment(addrs[i], amnts[i]) */\n tag_52\n /* \"contracts/AllPayment.sol\":3939:3944 addrs */\n dup5\n /* \"contracts/AllPayment.sol\":3945:3946 i */\n dup3\n /* \"contracts/AllPayment.sol\":3939:3947 addrs[i] */\n dup2\n mload\n dup2\n lt\n tag_53\n jumpi\n tag_54\n tag_49\n jump\t// in\n tag_54:\n tag_53:\n 0x20\n mul\n 0x20\n add\n add\n mload\n /* \"contracts/AllPayment.sol\":3949:3954 amnts */\n dup5\n /* \"contracts/AllPayment.sol\":3955:3956 i */\n dup4\n /* \"contracts/AllPayment.sol\":3949:3957 amnts[i] */\n dup2\n mload\n dup2\n lt\n tag_55\n jumpi\n tag_56\n tag_49\n jump\t// in\n tag_56:\n tag_55:\n 0x20\n mul\n 0x20\n add\n add\n mload\n /* \"contracts/AllPayment.sol\":3927:3938 nodePayment */\n tag_57\n /* \"contracts/AllPayment.sol\":3927:3958 nodePayment(addrs[i], amnts[i]) */\n jump\t// in\n tag_52:\n /* \"contracts/AllPayment.sol\":3653:3656 i++ */\n dup1\n dup1\n tag_58\n swap1\n tag_59\n jump\t// in\n tag_58:\n swap2\n pop\n pop\n /* \"contracts/AllPayment.sol\":3620:3970 for (uint i=0; i < addrs.length; i++) {... */\n jump(tag_44)\n tag_45:\n pop\n /* \"contracts/AllPayment.sol\":3022:3977 {... */\n pop\n /* \"contracts/AllPayment.sol\":2934:3977 function withdrawls(address payable[] memory addrs, uint[] memory amnts) payable public {... */\n pop\n pop\n jump\t// out\n /* \"contracts/AllPayment.sol\":2058:2379 function sum(uint[] memory amounts) private pure returns (uint retVal) {... */\n tag_40:\n /* \"contracts/AllPayment.sol\":2116:2127 uint retVal */\n 0x00\n /* \"contracts/AllPayment.sol\":2206:2220 uint totalAmnt */\n dup1\n /* \"contracts/AllPayment.sol\":2223:2224 0 */\n 0x00\n /* \"contracts/AllPayment.sol\":2206:2224 uint totalAmnt = 0 */\n swap1\n pop\n /* \"contracts/AllPayment.sol\":2250:2256 uint i */\n 0x00\n /* \"contracts/AllPayment.sol\":2245:2335 for (uint i=0; i < amounts.length; i++) {... */\n tag_61:\n /* \"contracts/AllPayment.sol\":2264:2271 amounts */\n dup4\n /* \"contracts/AllPayment.sol\":2264:2278 amounts.length */\n mload\n /* \"contracts/AllPayment.sol\":2260:2261 i */\n dup2\n /* \"contracts/AllPayment.sol\":2260:2278 i < amounts.length */\n lt\n /* \"contracts/AllPayment.sol\":2245:2335 for (uint i=0; i < amounts.length; i++) {... */\n iszero\n tag_62\n jumpi\n /* \"contracts/AllPayment.sol\":2313:2320 amounts */\n dup4\n /* \"contracts/AllPayment.sol\":2321:2322 i */\n dup2\n /* \"contracts/AllPayment.sol\":2313:2323 amounts[i] */\n dup2\n mload\n dup2\n lt\n tag_64\n jumpi\n tag_65\n tag_49\n jump\t// in\n tag_65:\n tag_64:\n 0x20\n mul\n 0x20\n add\n add\n mload\n /* \"contracts/AllPayment.sol\":2300:2323 totalAmnt += amounts[i] */\n dup3\n tag_66\n swap2\n swap1\n tag_28\n jump\t// in\n tag_66:\n swap2\n pop\n /* \"contracts/AllPayment.sol\":2280:2283 i++ */\n dup1\n dup1\n tag_67\n swap1\n tag_59\n jump\t// in\n tag_67:\n swap2\n pop\n pop\n /* \"contracts/AllPayment.sol\":2245:2335 for (uint i=0; i < amounts.length; i++) {... */\n jump(tag_61)\n tag_62:\n pop\n /* \"contracts/AllPayment.sol\":2362:2371 totalAmnt */\n dup1\n /* \"contracts/AllPayment.sol\":2355:2371 return totalAmnt */\n swap2\n pop\n pop\n /* \"contracts/AllPayment.sol\":2058:2379 function sum(uint[] memory amounts) private pure returns (uint retVal) {... */\n swap2\n swap1\n pop\n jump\t// out\n /* \"contracts/AllPayment.sol\":2442:2618 function nodePayment(address payable receiverAddr, uint receiverAmnt) private {... */\n tag_57:\n /* \"contracts/AllPayment.sol\":2545:2564 1000000000000000000 */\n 0x0de0b6b3a7640000\n /* \"contracts/AllPayment.sol\":2531:2564 receiverAmnt*=1000000000000000000 */\n dup2\n tag_69\n swap2\n swap1\n tag_70\n jump\t// in\n tag_69:\n swap1\n pop\n /* \"contracts/AllPayment.sol\":2575:2587 receiverAddr */\n dup2\n /* \"contracts/AllPayment.sol\":2575:2596 receiverAddr.transfer */\n 0xffffffffffffffffffffffffffffffffffffffff\n and\n /* \"contracts/AllPayment.sol\":2575:2610 receiverAddr.transfer(receiverAmnt) */\n 0x08fc\n /* \"contracts/AllPayment.sol\":2597:2609 receiverAmnt */\n dup3\n /* \"contracts/AllPayment.sol\":2575:2610 receiverAddr.transfer(receiverAmnt) */\n swap1\n dup2\n iszero\n mul\n swap1\n mload(0x40)\n 0x00\n mload(0x40)\n dup1\n dup4\n sub\n dup2\n dup6\n dup9\n dup9\n call\n swap4\n pop\n pop\n pop\n pop\n iszero\n dup1\n iszero\n tag_72\n jumpi\n returndatasize\n 0x00\n dup1\n returndatacopy\n revert(0x00, returndatasize)\n tag_72:\n pop\n /* \"contracts/AllPayment.sol\":2442:2618 function nodePayment(address payable receiverAddr, uint receiverAmnt) private {... */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":7:133 */\n tag_73:\n /* \"#utility.yul\":44:51 */\n 0x00\n /* \"#utility.yul\":84:126 */\n 0xffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":77:82 */\n dup3\n /* \"#utility.yul\":73:127 */\n and\n /* \"#utility.yul\":62:127 */\n swap1\n pop\n /* \"#utility.yul\":7:133 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":139:235 */\n tag_74:\n /* \"#utility.yul\":176:183 */\n 0x00\n /* \"#utility.yul\":205:229 */\n tag_110\n /* \"#utility.yul\":223:228 */\n dup3\n /* \"#utility.yul\":205:229 */\n tag_73\n jump\t// in\n tag_110:\n /* \"#utility.yul\":194:229 */\n swap1\n pop\n /* \"#utility.yul\":139:235 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":241:359 */\n tag_75:\n /* \"#utility.yul\":328:352 */\n tag_112\n /* \"#utility.yul\":346:351 */\n dup2\n /* \"#utility.yul\":328:352 */\n tag_74\n jump\t// in\n tag_112:\n /* \"#utility.yul\":323:326 */\n dup3\n /* \"#utility.yul\":316:353 */\n mstore\n /* \"#utility.yul\":241:359 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":365:587 */\n tag_12:\n /* \"#utility.yul\":458:462 */\n 0x00\n /* \"#utility.yul\":496:498 */\n 0x20\n /* \"#utility.yul\":485:494 */\n dup3\n /* \"#utility.yul\":481:499 */\n add\n /* \"#utility.yul\":473:499 */\n swap1\n pop\n /* \"#utility.yul\":509:580 */\n tag_114\n /* \"#utility.yul\":577:578 */\n 0x00\n /* \"#utility.yul\":566:575 */\n dup4\n /* \"#utility.yul\":562:579 */\n add\n /* \"#utility.yul\":553:559 */\n dup5\n /* \"#utility.yul\":509:580 */\n tag_75\n jump\t// in\n tag_114:\n /* \"#utility.yul\":365:587 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":593:668 */\n tag_76:\n /* \"#utility.yul\":626:632 */\n 0x00\n /* \"#utility.yul\":659:661 */\n 0x40\n /* \"#utility.yul\":653:662 */\n mload\n /* \"#utility.yul\":643:662 */\n swap1\n pop\n /* \"#utility.yul\":593:668 */\n swap1\n jump\t// out\n /* \"#utility.yul\":674:791 */\n tag_77:\n /* \"#utility.yul\":783:784 */\n 0x00\n /* \"#utility.yul\":780:781 */\n dup1\n /* \"#utility.yul\":773:785 */\n revert\n /* \"#utility.yul\":797:914 */\n tag_78:\n /* \"#utility.yul\":906:907 */\n 0x00\n /* \"#utility.yul\":903:904 */\n dup1\n /* \"#utility.yul\":896:908 */\n revert\n /* \"#utility.yul\":920:1042 */\n tag_79:\n /* \"#utility.yul\":993:1017 */\n tag_119\n /* \"#utility.yul\":1011:1016 */\n dup2\n /* \"#utility.yul\":993:1017 */\n tag_74\n jump\t// in\n tag_119:\n /* \"#utility.yul\":986:991 */\n dup2\n /* \"#utility.yul\":983:1018 */\n eq\n /* \"#utility.yul\":973:1036 */\n tag_120\n jumpi\n /* \"#utility.yul\":1032:1033 */\n 0x00\n /* \"#utility.yul\":1029:1030 */\n dup1\n /* \"#utility.yul\":1022:1034 */\n revert\n /* \"#utility.yul\":973:1036 */\n tag_120:\n /* \"#utility.yul\":920:1042 */\n pop\n jump\t// out\n /* \"#utility.yul\":1048:1187 */\n tag_80:\n /* \"#utility.yul\":1094:1099 */\n 0x00\n /* \"#utility.yul\":1132:1138 */\n dup2\n /* \"#utility.yul\":1119:1139 */\n calldataload\n /* \"#utility.yul\":1110:1139 */\n swap1\n pop\n /* \"#utility.yul\":1148:1181 */\n tag_122\n /* \"#utility.yul\":1175:1180 */\n dup2\n /* \"#utility.yul\":1148:1181 */\n tag_79\n jump\t// in\n tag_122:\n /* \"#utility.yul\":1048:1187 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1193:1522 */\n tag_16:\n /* \"#utility.yul\":1252:1258 */\n 0x00\n /* \"#utility.yul\":1301:1303 */\n 0x20\n /* \"#utility.yul\":1289:1298 */\n dup3\n /* \"#utility.yul\":1280:1287 */\n dup5\n /* \"#utility.yul\":1276:1299 */\n sub\n /* \"#utility.yul\":1272:1304 */\n slt\n /* \"#utility.yul\":1269:1388 */\n iszero\n tag_124\n jumpi\n /* \"#utility.yul\":1307:1386 */\n tag_125\n tag_77\n jump\t// in\n tag_125:\n /* \"#utility.yul\":1269:1388 */\n tag_124:\n /* \"#utility.yul\":1427:1428 */\n 0x00\n /* \"#utility.yul\":1452:1505 */\n tag_126\n /* \"#utility.yul\":1497:1504 */\n dup5\n /* \"#utility.yul\":1488:1494 */\n dup3\n /* \"#utility.yul\":1477:1486 */\n dup6\n /* \"#utility.yul\":1473:1495 */\n add\n /* \"#utility.yul\":1452:1505 */\n tag_80\n jump\t// in\n tag_126:\n /* \"#utility.yul\":1442:1505 */\n swap2\n pop\n /* \"#utility.yul\":1398:1515 */\n pop\n /* \"#utility.yul\":1193:1522 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1528:1645 */\n tag_81:\n /* \"#utility.yul\":1637:1638 */\n 0x00\n /* \"#utility.yul\":1634:1635 */\n dup1\n /* \"#utility.yul\":1627:1639 */\n revert\n /* \"#utility.yul\":1651:1753 */\n tag_82:\n /* \"#utility.yul\":1692:1698 */\n 0x00\n /* \"#utility.yul\":1743:1745 */\n 0x1f\n /* \"#utility.yul\":1739:1746 */\n not\n /* \"#utility.yul\":1734:1736 */\n 0x1f\n /* \"#utility.yul\":1727:1732 */\n dup4\n /* \"#utility.yul\":1723:1737 */\n add\n /* \"#utility.yul\":1719:1747 */\n and\n /* \"#utility.yul\":1709:1747 */\n swap1\n pop\n /* \"#utility.yul\":1651:1753 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1759:1939 */\n tag_83:\n /* \"#utility.yul\":1807:1884 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1804:1805 */\n 0x00\n /* \"#utility.yul\":1797:1885 */\n mstore\n /* \"#utility.yul\":1904:1908 */\n 0x41\n /* \"#utility.yul\":1901:1902 */\n 0x04\n /* \"#utility.yul\":1894:1909 */\n mstore\n /* \"#utility.yul\":1928:1932 */\n 0x24\n /* \"#utility.yul\":1925:1926 */\n 0x00\n /* \"#utility.yul\":1918:1933 */\n revert\n /* \"#utility.yul\":1945:2226 */\n tag_84:\n /* \"#utility.yul\":2028:2055 */\n tag_131\n /* \"#utility.yul\":2050:2054 */\n dup3\n /* \"#utility.yul\":2028:2055 */\n tag_82\n jump\t// in\n tag_131:\n /* \"#utility.yul\":2020:2026 */\n dup2\n /* \"#utility.yul\":2016:2056 */\n add\n /* \"#utility.yul\":2158:2164 */\n dup2\n /* \"#utility.yul\":2146:2156 */\n dup2\n /* \"#utility.yul\":2143:2165 */\n lt\n /* \"#utility.yul\":2122:2140 */\n 0xffffffffffffffff\n /* \"#utility.yul\":2110:2120 */\n dup3\n /* \"#utility.yul\":2107:2141 */\n gt\n /* \"#utility.yul\":2104:2166 */\n or\n /* \"#utility.yul\":2101:2189 */\n iszero\n tag_132\n jumpi\n /* \"#utility.yul\":2169:2187 */\n tag_133\n tag_83\n jump\t// in\n tag_133:\n /* \"#utility.yul\":2101:2189 */\n tag_132:\n /* \"#utility.yul\":2209:2219 */\n dup1\n /* \"#utility.yul\":2205:2207 */\n 0x40\n /* \"#utility.yul\":2198:2220 */\n mstore\n /* \"#utility.yul\":1988:2226 */\n pop\n /* \"#utility.yul\":1945:2226 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2232:2361 */\n tag_85:\n /* \"#utility.yul\":2266:2272 */\n 0x00\n /* \"#utility.yul\":2293:2313 */\n tag_135\n tag_76\n jump\t// in\n tag_135:\n /* \"#utility.yul\":2283:2313 */\n swap1\n pop\n /* \"#utility.yul\":2322:2355 */\n tag_136\n /* \"#utility.yul\":2350:2354 */\n dup3\n /* \"#utility.yul\":2342:2348 */\n dup3\n /* \"#utility.yul\":2322:2355 */\n tag_84\n jump\t// in\n tag_136:\n /* \"#utility.yul\":2232:2361 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2367:2686 */\n tag_86:\n /* \"#utility.yul\":2452:2456 */\n 0x00\n /* \"#utility.yul\":2542:2560 */\n 0xffffffffffffffff\n /* \"#utility.yul\":2534:2540 */\n dup3\n /* \"#utility.yul\":2531:2561 */\n gt\n /* \"#utility.yul\":2528:2584 */\n iszero\n tag_138\n jumpi\n /* \"#utility.yul\":2564:2582 */\n tag_139\n tag_83\n jump\t// in\n tag_139:\n /* \"#utility.yul\":2528:2584 */\n tag_138:\n /* \"#utility.yul\":2614:2618 */\n 0x20\n /* \"#utility.yul\":2606:2612 */\n dup3\n /* \"#utility.yul\":2602:2619 */\n mul\n /* \"#utility.yul\":2594:2619 */\n swap1\n pop\n /* \"#utility.yul\":2674:2678 */\n 0x20\n /* \"#utility.yul\":2668:2672 */\n dup2\n /* \"#utility.yul\":2664:2679 */\n add\n /* \"#utility.yul\":2656:2679 */\n swap1\n pop\n /* \"#utility.yul\":2367:2686 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2692:2809 */\n tag_87:\n /* \"#utility.yul\":2801:2802 */\n 0x00\n /* \"#utility.yul\":2798:2799 */\n dup1\n /* \"#utility.yul\":2791:2803 */\n revert\n /* \"#utility.yul\":2815:2919 */\n tag_88:\n /* \"#utility.yul\":2860:2867 */\n 0x00\n /* \"#utility.yul\":2889:2913 */\n tag_142\n /* \"#utility.yul\":2907:2912 */\n dup3\n /* \"#utility.yul\":2889:2913 */\n tag_73\n jump\t// in\n tag_142:\n /* \"#utility.yul\":2878:2913 */\n swap1\n pop\n /* \"#utility.yul\":2815:2919 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2925:3063 */\n tag_89:\n /* \"#utility.yul\":3006:3038 */\n tag_144\n /* \"#utility.yul\":3032:3037 */\n dup2\n /* \"#utility.yul\":3006:3038 */\n tag_88\n jump\t// in\n tag_144:\n /* \"#utility.yul\":2999:3004 */\n dup2\n /* \"#utility.yul\":2996:3039 */\n eq\n /* \"#utility.yul\":2986:3057 */\n tag_145\n jumpi\n /* \"#utility.yul\":3053:3054 */\n 0x00\n /* \"#utility.yul\":3050:3051 */\n dup1\n /* \"#utility.yul\":3043:3055 */\n revert\n /* \"#utility.yul\":2986:3057 */\n tag_145:\n /* \"#utility.yul\":2925:3063 */\n pop\n jump\t// out\n /* \"#utility.yul\":3069:3224 */\n tag_90:\n /* \"#utility.yul\":3123:3128 */\n 0x00\n /* \"#utility.yul\":3161:3167 */\n dup2\n /* \"#utility.yul\":3148:3168 */\n calldataload\n /* \"#utility.yul\":3139:3168 */\n swap1\n pop\n /* \"#utility.yul\":3177:3218 */\n tag_147\n /* \"#utility.yul\":3212:3217 */\n dup2\n /* \"#utility.yul\":3177:3218 */\n tag_89\n jump\t// in\n tag_147:\n /* \"#utility.yul\":3069:3224 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3255:3989 */\n tag_91:\n /* \"#utility.yul\":3359:3364 */\n 0x00\n /* \"#utility.yul\":3384:3473 */\n tag_149\n /* \"#utility.yul\":3400:3472 */\n tag_150\n /* \"#utility.yul\":3465:3471 */\n dup5\n /* \"#utility.yul\":3400:3472 */\n tag_86\n jump\t// in\n tag_150:\n /* \"#utility.yul\":3384:3473 */\n tag_85\n jump\t// in\n tag_149:\n /* \"#utility.yul\":3375:3473 */\n swap1\n pop\n /* \"#utility.yul\":3493:3498 */\n dup1\n /* \"#utility.yul\":3522:3528 */\n dup4\n /* \"#utility.yul\":3515:3520 */\n dup3\n /* \"#utility.yul\":3508:3529 */\n mstore\n /* \"#utility.yul\":3556:3560 */\n 0x20\n /* \"#utility.yul\":3549:3554 */\n dup3\n /* \"#utility.yul\":3545:3561 */\n add\n /* \"#utility.yul\":3538:3561 */\n swap1\n pop\n /* \"#utility.yul\":3609:3613 */\n 0x20\n /* \"#utility.yul\":3601:3607 */\n dup5\n /* \"#utility.yul\":3597:3614 */\n mul\n /* \"#utility.yul\":3589:3595 */\n dup4\n /* \"#utility.yul\":3585:3615 */\n add\n /* \"#utility.yul\":3638:3641 */\n dup6\n /* \"#utility.yul\":3630:3636 */\n dup2\n /* \"#utility.yul\":3627:3642 */\n gt\n /* \"#utility.yul\":3624:3746 */\n iszero\n tag_151\n jumpi\n /* \"#utility.yul\":3657:3736 */\n tag_152\n tag_87\n jump\t// in\n tag_152:\n /* \"#utility.yul\":3624:3746 */\n tag_151:\n /* \"#utility.yul\":3772:3778 */\n dup4\n /* \"#utility.yul\":3755:3983 */\n tag_153:\n /* \"#utility.yul\":3789:3795 */\n dup2\n /* \"#utility.yul\":3784:3787 */\n dup2\n /* \"#utility.yul\":3781:3796 */\n lt\n /* \"#utility.yul\":3755:3983 */\n iszero\n tag_155\n jumpi\n /* \"#utility.yul\":3864:3867 */\n dup1\n /* \"#utility.yul\":3893:3938 */\n tag_156\n /* \"#utility.yul\":3934:3937 */\n dup9\n /* \"#utility.yul\":3922:3932 */\n dup3\n /* \"#utility.yul\":3893:3938 */\n tag_90\n jump\t// in\n tag_156:\n /* \"#utility.yul\":3888:3891 */\n dup5\n /* \"#utility.yul\":3881:3939 */\n mstore\n /* \"#utility.yul\":3968:3972 */\n 0x20\n /* \"#utility.yul\":3963:3966 */\n dup5\n /* \"#utility.yul\":3959:3973 */\n add\n /* \"#utility.yul\":3952:3973 */\n swap4\n pop\n /* \"#utility.yul\":3831:3983 */\n pop\n /* \"#utility.yul\":3815:3819 */\n 0x20\n /* \"#utility.yul\":3810:3813 */\n dup2\n /* \"#utility.yul\":3806:3820 */\n add\n /* \"#utility.yul\":3799:3820 */\n swap1\n pop\n /* \"#utility.yul\":3755:3983 */\n jump(tag_153)\n tag_155:\n /* \"#utility.yul\":3759:3780 */\n pop\n /* \"#utility.yul\":3365:3989 */\n pop\n pop\n /* \"#utility.yul\":3255:3989 */\n swap4\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4020:4406 */\n tag_92:\n /* \"#utility.yul\":4099:4104 */\n 0x00\n /* \"#utility.yul\":4148:4151 */\n dup3\n /* \"#utility.yul\":4141:4145 */\n 0x1f\n /* \"#utility.yul\":4133:4139 */\n dup4\n /* \"#utility.yul\":4129:4146 */\n add\n /* \"#utility.yul\":4125:4152 */\n slt\n /* \"#utility.yul\":4115:4237 */\n tag_158\n jumpi\n /* \"#utility.yul\":4156:4235 */\n tag_159\n tag_81\n jump\t// in\n tag_159:\n /* \"#utility.yul\":4115:4237 */\n tag_158:\n /* \"#utility.yul\":4273:4279 */\n dup2\n /* \"#utility.yul\":4260:4280 */\n calldataload\n /* \"#utility.yul\":4298:4400 */\n tag_160\n /* \"#utility.yul\":4396:4399 */\n dup5\n /* \"#utility.yul\":4388:4394 */\n dup3\n /* \"#utility.yul\":4381:4385 */\n 0x20\n /* \"#utility.yul\":4373:4379 */\n dup7\n /* \"#utility.yul\":4369:4386 */\n add\n /* \"#utility.yul\":4298:4400 */\n tag_91\n jump\t// in\n tag_160:\n /* \"#utility.yul\":4289:4400 */\n swap2\n pop\n /* \"#utility.yul\":4105:4406 */\n pop\n /* \"#utility.yul\":4020:4406 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4412:4723 */\n tag_93:\n /* \"#utility.yul\":4489:4493 */\n 0x00\n /* \"#utility.yul\":4579:4597 */\n 0xffffffffffffffff\n /* \"#utility.yul\":4571:4577 */\n dup3\n /* \"#utility.yul\":4568:4598 */\n gt\n /* \"#utility.yul\":4565:4621 */\n iszero\n tag_162\n jumpi\n /* \"#utility.yul\":4601:4619 */\n tag_163\n tag_83\n jump\t// in\n tag_163:\n /* \"#utility.yul\":4565:4621 */\n tag_162:\n /* \"#utility.yul\":4651:4655 */\n 0x20\n /* \"#utility.yul\":4643:4649 */\n dup3\n /* \"#utility.yul\":4639:4656 */\n mul\n /* \"#utility.yul\":4631:4656 */\n swap1\n pop\n /* \"#utility.yul\":4711:4715 */\n 0x20\n /* \"#utility.yul\":4705:4709 */\n dup2\n /* \"#utility.yul\":4701:4716 */\n add\n /* \"#utility.yul\":4693:4716 */\n swap1\n pop\n /* \"#utility.yul\":4412:4723 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4729:4806 */\n tag_94:\n /* \"#utility.yul\":4766:4773 */\n 0x00\n /* \"#utility.yul\":4795:4800 */\n dup2\n /* \"#utility.yul\":4784:4800 */\n swap1\n pop\n /* \"#utility.yul\":4729:4806 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4812:4934 */\n tag_95:\n /* \"#utility.yul\":4885:4909 */\n tag_166\n /* \"#utility.yul\":4903:4908 */\n dup2\n /* \"#utility.yul\":4885:4909 */\n tag_94\n jump\t// in\n tag_166:\n /* \"#utility.yul\":4878:4883 */\n dup2\n /* \"#utility.yul\":4875:4910 */\n eq\n /* \"#utility.yul\":4865:4928 */\n tag_167\n jumpi\n /* \"#utility.yul\":4924:4925 */\n 0x00\n /* \"#utility.yul\":4921:4922 */\n dup1\n /* \"#utility.yul\":4914:4926 */\n revert\n /* \"#utility.yul\":4865:4928 */\n tag_167:\n /* \"#utility.yul\":4812:4934 */\n pop\n jump\t// out\n /* \"#utility.yul\":4940:5079 */\n tag_96:\n /* \"#utility.yul\":4986:4991 */\n 0x00\n /* \"#utility.yul\":5024:5030 */\n dup2\n /* \"#utility.yul\":5011:5031 */\n calldataload\n /* \"#utility.yul\":5002:5031 */\n swap1\n pop\n /* \"#utility.yul\":5040:5073 */\n tag_169\n /* \"#utility.yul\":5067:5072 */\n dup2\n /* \"#utility.yul\":5040:5073 */\n tag_95\n jump\t// in\n tag_169:\n /* \"#utility.yul\":4940:5079 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":5102:5812 */\n tag_97:\n /* \"#utility.yul\":5198:5203 */\n 0x00\n /* \"#utility.yul\":5223:5304 */\n tag_171\n /* \"#utility.yul\":5239:5303 */\n tag_172\n /* \"#utility.yul\":5296:5302 */\n dup5\n /* \"#utility.yul\":5239:5303 */\n tag_93\n jump\t// in\n tag_172:\n /* \"#utility.yul\":5223:5304 */\n tag_85\n jump\t// in\n tag_171:\n /* \"#utility.yul\":5214:5304 */\n swap1\n pop\n /* \"#utility.yul\":5324:5329 */\n dup1\n /* \"#utility.yul\":5353:5359 */\n dup4\n /* \"#utility.yul\":5346:5351 */\n dup3\n /* \"#utility.yul\":5339:5360 */\n mstore\n /* \"#utility.yul\":5387:5391 */\n 0x20\n /* \"#utility.yul\":5380:5385 */\n dup3\n /* \"#utility.yul\":5376:5392 */\n add\n /* \"#utility.yul\":5369:5392 */\n swap1\n pop\n /* \"#utility.yul\":5440:5444 */\n 0x20\n /* \"#utility.yul\":5432:5438 */\n dup5\n /* \"#utility.yul\":5428:5445 */\n mul\n /* \"#utility.yul\":5420:5426 */\n dup4\n /* \"#utility.yul\":5416:5446 */\n add\n /* \"#utility.yul\":5469:5472 */\n dup6\n /* \"#utility.yul\":5461:5467 */\n dup2\n /* \"#utility.yul\":5458:5473 */\n gt\n /* \"#utility.yul\":5455:5577 */\n iszero\n tag_173\n jumpi\n /* \"#utility.yul\":5488:5567 */\n tag_174\n tag_87\n jump\t// in\n tag_174:\n /* \"#utility.yul\":5455:5577 */\n tag_173:\n /* \"#utility.yul\":5603:5609 */\n dup4\n /* \"#utility.yul\":5586:5806 */\n tag_175:\n /* \"#utility.yul\":5620:5626 */\n dup2\n /* \"#utility.yul\":5615:5618 */\n dup2\n /* \"#utility.yul\":5612:5627 */\n lt\n /* \"#utility.yul\":5586:5806 */\n iszero\n tag_177\n jumpi\n /* \"#utility.yul\":5695:5698 */\n dup1\n /* \"#utility.yul\":5724:5761 */\n tag_178\n /* \"#utility.yul\":5757:5760 */\n dup9\n /* \"#utility.yul\":5745:5755 */\n dup3\n /* \"#utility.yul\":5724:5761 */\n tag_96\n jump\t// in\n tag_178:\n /* \"#utility.yul\":5719:5722 */\n dup5\n /* \"#utility.yul\":5712:5762 */\n mstore\n /* \"#utility.yul\":5791:5795 */\n 0x20\n /* \"#utility.yul\":5786:5789 */\n dup5\n /* \"#utility.yul\":5782:5796 */\n add\n /* \"#utility.yul\":5775:5796 */\n swap4\n pop\n /* \"#utility.yul\":5662:5806 */\n pop\n /* \"#utility.yul\":5646:5650 */\n 0x20\n /* \"#utility.yul\":5641:5644 */\n dup2\n /* \"#utility.yul\":5637:5651 */\n add\n /* \"#utility.yul\":5630:5651 */\n swap1\n pop\n /* \"#utility.yul\":5586:5806 */\n jump(tag_175)\n tag_177:\n /* \"#utility.yul\":5590:5611 */\n pop\n /* \"#utility.yul\":5204:5812 */\n pop\n pop\n /* \"#utility.yul\":5102:5812 */\n swap4\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":5835:6205 */\n tag_98:\n /* \"#utility.yul\":5906:5911 */\n 0x00\n /* \"#utility.yul\":5955:5958 */\n dup3\n /* \"#utility.yul\":5948:5952 */\n 0x1f\n /* \"#utility.yul\":5940:5946 */\n dup4\n /* \"#utility.yul\":5936:5953 */\n add\n /* \"#utility.yul\":5932:5959 */\n slt\n /* \"#utility.yul\":5922:6044 */\n tag_180\n jumpi\n /* \"#utility.yul\":5963:6042 */\n tag_181\n tag_81\n jump\t// in\n tag_181:\n /* \"#utility.yul\":5922:6044 */\n tag_180:\n /* \"#utility.yul\":6080:6086 */\n dup2\n /* \"#utility.yul\":6067:6087 */\n calldataload\n /* \"#utility.yul\":6105:6199 */\n tag_182\n /* \"#utility.yul\":6195:6198 */\n dup5\n /* \"#utility.yul\":6187:6193 */\n dup3\n /* \"#utility.yul\":6180:6184 */\n 0x20\n /* \"#utility.yul\":6172:6178 */\n dup7\n /* \"#utility.yul\":6168:6185 */\n add\n /* \"#utility.yul\":6105:6199 */\n tag_97\n jump\t// in\n tag_182:\n /* \"#utility.yul\":6096:6199 */\n swap2\n pop\n /* \"#utility.yul\":5912:6205 */\n pop\n /* \"#utility.yul\":5835:6205 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":6211:7121 */\n tag_20:\n /* \"#utility.yul\":6337:6343 */\n 0x00\n /* \"#utility.yul\":6345:6351 */\n dup1\n /* \"#utility.yul\":6394:6396 */\n 0x40\n /* \"#utility.yul\":6382:6391 */\n dup4\n /* \"#utility.yul\":6373:6380 */\n dup6\n /* \"#utility.yul\":6369:6392 */\n sub\n /* \"#utility.yul\":6365:6397 */\n slt\n /* \"#utility.yul\":6362:6481 */\n iszero\n tag_184\n jumpi\n /* \"#utility.yul\":6400:6479 */\n tag_185\n tag_77\n jump\t// in\n tag_185:\n /* \"#utility.yul\":6362:6481 */\n tag_184:\n /* \"#utility.yul\":6548:6549 */\n 0x00\n /* \"#utility.yul\":6537:6546 */\n dup4\n /* \"#utility.yul\":6533:6550 */\n add\n /* \"#utility.yul\":6520:6551 */\n calldataload\n /* \"#utility.yul\":6578:6596 */\n 0xffffffffffffffff\n /* \"#utility.yul\":6570:6576 */\n dup2\n /* \"#utility.yul\":6567:6597 */\n gt\n /* \"#utility.yul\":6564:6681 */\n iszero\n tag_186\n jumpi\n /* \"#utility.yul\":6600:6679 */\n tag_187\n tag_78\n jump\t// in\n tag_187:\n /* \"#utility.yul\":6564:6681 */\n tag_186:\n /* \"#utility.yul\":6705:6791 */\n tag_188\n /* \"#utility.yul\":6783:6790 */\n dup6\n /* \"#utility.yul\":6774:6780 */\n dup3\n /* \"#utility.yul\":6763:6772 */\n dup7\n /* \"#utility.yul\":6759:6781 */\n add\n /* \"#utility.yul\":6705:6791 */\n tag_92\n jump\t// in\n tag_188:\n /* \"#utility.yul\":6695:6791 */\n swap3\n pop\n /* \"#utility.yul\":6491:6801 */\n pop\n /* \"#utility.yul\":6868:6870 */\n 0x20\n /* \"#utility.yul\":6857:6866 */\n dup4\n /* \"#utility.yul\":6853:6871 */\n add\n /* \"#utility.yul\":6840:6872 */\n calldataload\n /* \"#utility.yul\":6899:6917 */\n 0xffffffffffffffff\n /* \"#utility.yul\":6891:6897 */\n dup2\n /* \"#utility.yul\":6888:6918 */\n gt\n /* \"#utility.yul\":6885:7002 */\n iszero\n tag_189\n jumpi\n /* \"#utility.yul\":6921:7000 */\n tag_190\n tag_78\n jump\t// in\n tag_190:\n /* \"#utility.yul\":6885:7002 */\n tag_189:\n /* \"#utility.yul\":7026:7104 */\n tag_191\n /* \"#utility.yul\":7096:7103 */\n dup6\n /* \"#utility.yul\":7087:7093 */\n dup3\n /* \"#utility.yul\":7076:7085 */\n dup7\n /* \"#utility.yul\":7072:7094 */\n add\n /* \"#utility.yul\":7026:7104 */\n tag_98\n jump\t// in\n tag_191:\n /* \"#utility.yul\":7016:7104 */\n swap2\n pop\n /* \"#utility.yul\":6811:7114 */\n pop\n /* \"#utility.yul\":6211:7121 */\n swap3\n pop\n swap3\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":7127:7296 */\n tag_99:\n /* \"#utility.yul\":7211:7222 */\n 0x00\n /* \"#utility.yul\":7245:7251 */\n dup3\n /* \"#utility.yul\":7240:7243 */\n dup3\n /* \"#utility.yul\":7233:7252 */\n mstore\n /* \"#utility.yul\":7285:7289 */\n 0x20\n /* \"#utility.yul\":7280:7283 */\n dup3\n /* \"#utility.yul\":7276:7290 */\n add\n /* \"#utility.yul\":7261:7290 */\n swap1\n pop\n /* \"#utility.yul\":7127:7296 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":7302:7471 */\n tag_100:\n /* \"#utility.yul\":7442:7463 */\n 0x43616c6c6572206973206e6f74206f776e657200000000000000000000000000\n /* \"#utility.yul\":7438:7439 */\n 0x00\n /* \"#utility.yul\":7430:7436 */\n dup3\n /* \"#utility.yul\":7426:7440 */\n add\n /* \"#utility.yul\":7419:7464 */\n mstore\n /* \"#utility.yul\":7302:7471 */\n pop\n jump\t// out\n /* \"#utility.yul\":7477:7843 */\n tag_101:\n /* \"#utility.yul\":7619:7622 */\n 0x00\n /* \"#utility.yul\":7640:7707 */\n tag_195\n /* \"#utility.yul\":7704:7706 */\n 0x13\n /* \"#utility.yul\":7699:7702 */\n dup4\n /* \"#utility.yul\":7640:7707 */\n tag_99\n jump\t// in\n tag_195:\n /* \"#utility.yul\":7633:7707 */\n swap2\n pop\n /* \"#utility.yul\":7716:7809 */\n tag_196\n /* \"#utility.yul\":7805:7808 */\n dup3\n /* \"#utility.yul\":7716:7809 */\n tag_100\n jump\t// in\n tag_196:\n /* \"#utility.yul\":7834:7836 */\n 0x20\n /* \"#utility.yul\":7829:7832 */\n dup3\n /* \"#utility.yul\":7825:7837 */\n add\n /* \"#utility.yul\":7818:7837 */\n swap1\n pop\n /* \"#utility.yul\":7477:7843 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":7849:8268 */\n tag_25:\n /* \"#utility.yul\":8015:8019 */\n 0x00\n /* \"#utility.yul\":8053:8055 */\n 0x20\n /* \"#utility.yul\":8042:8051 */\n dup3\n /* \"#utility.yul\":8038:8056 */\n add\n /* \"#utility.yul\":8030:8056 */\n swap1\n pop\n /* \"#utility.yul\":8102:8111 */\n dup2\n /* \"#utility.yul\":8096:8100 */\n dup2\n /* \"#utility.yul\":8092:8112 */\n sub\n /* \"#utility.yul\":8088:8089 */\n 0x00\n /* \"#utility.yul\":8077:8086 */\n dup4\n /* \"#utility.yul\":8073:8090 */\n add\n /* \"#utility.yul\":8066:8113 */\n mstore\n /* \"#utility.yul\":8130:8261 */\n tag_198\n /* \"#utility.yul\":8256:8260 */\n dup2\n /* \"#utility.yul\":8130:8261 */\n tag_101\n jump\t// in\n tag_198:\n /* \"#utility.yul\":8122:8261 */\n swap1\n pop\n /* \"#utility.yul\":7849:8268 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":8274:8454 */\n tag_102:\n /* \"#utility.yul\":8322:8399 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":8319:8320 */\n 0x00\n /* \"#utility.yul\":8312:8400 */\n mstore\n /* \"#utility.yul\":8419:8423 */\n 0x11\n /* \"#utility.yul\":8416:8417 */\n 0x04\n /* \"#utility.yul\":8409:8424 */\n mstore\n /* \"#utility.yul\":8443:8447 */\n 0x24\n /* \"#utility.yul\":8440:8441 */\n 0x00\n /* \"#utility.yul\":8433:8448 */\n revert\n /* \"#utility.yul\":8460:8765 */\n tag_28:\n /* \"#utility.yul\":8500:8503 */\n 0x00\n /* \"#utility.yul\":8519:8539 */\n tag_201\n /* \"#utility.yul\":8537:8538 */\n dup3\n /* \"#utility.yul\":8519:8539 */\n tag_94\n jump\t// in\n tag_201:\n /* \"#utility.yul\":8514:8539 */\n swap2\n pop\n /* \"#utility.yul\":8553:8573 */\n tag_202\n /* \"#utility.yul\":8571:8572 */\n dup4\n /* \"#utility.yul\":8553:8573 */\n tag_94\n jump\t// in\n tag_202:\n /* \"#utility.yul\":8548:8573 */\n swap3\n pop\n /* \"#utility.yul\":8707:8708 */\n dup3\n /* \"#utility.yul\":8639:8705 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":8635:8709 */\n sub\n /* \"#utility.yul\":8632:8633 */\n dup3\n /* \"#utility.yul\":8629:8710 */\n gt\n /* \"#utility.yul\":8626:8733 */\n iszero\n tag_203\n jumpi\n /* \"#utility.yul\":8713:8731 */\n tag_204\n tag_102\n jump\t// in\n tag_204:\n /* \"#utility.yul\":8626:8733 */\n tag_203:\n /* \"#utility.yul\":8757:8758 */\n dup3\n /* \"#utility.yul\":8754:8755 */\n dup3\n /* \"#utility.yul\":8750:8759 */\n add\n /* \"#utility.yul\":8743:8759 */\n swap1\n pop\n /* \"#utility.yul\":8460:8765 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":8771:9000 */\n tag_103:\n /* \"#utility.yul\":8911:8945 */\n 0x546865206c656e677468206f662074776f2061727261792073686f756c642062\n /* \"#utility.yul\":8907:8908 */\n 0x00\n /* \"#utility.yul\":8899:8905 */\n dup3\n /* \"#utility.yul\":8895:8909 */\n add\n /* \"#utility.yul\":8888:8946 */\n mstore\n /* \"#utility.yul\":8980:8992 */\n 0x65207468652073616d6500000000000000000000000000000000000000000000\n /* \"#utility.yul\":8975:8977 */\n 0x20\n /* \"#utility.yul\":8967:8973 */\n dup3\n /* \"#utility.yul\":8963:8978 */\n add\n /* \"#utility.yul\":8956:8993 */\n mstore\n /* \"#utility.yul\":8771:9000 */\n pop\n jump\t// out\n /* \"#utility.yul\":9006:9372 */\n tag_104:\n /* \"#utility.yul\":9148:9151 */\n 0x00\n /* \"#utility.yul\":9169:9236 */\n tag_207\n /* \"#utility.yul\":9233:9235 */\n 0x2a\n /* \"#utility.yul\":9228:9231 */\n dup4\n /* \"#utility.yul\":9169:9236 */\n tag_99\n jump\t// in\n tag_207:\n /* \"#utility.yul\":9162:9236 */\n swap2\n pop\n /* \"#utility.yul\":9245:9338 */\n tag_208\n /* \"#utility.yul\":9334:9337 */\n dup3\n /* \"#utility.yul\":9245:9338 */\n tag_103\n jump\t// in\n tag_208:\n /* \"#utility.yul\":9363:9365 */\n 0x40\n /* \"#utility.yul\":9358:9361 */\n dup3\n /* \"#utility.yul\":9354:9366 */\n add\n /* \"#utility.yul\":9347:9366 */\n swap1\n pop\n /* \"#utility.yul\":9006:9372 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":9378:9797 */\n tag_38:\n /* \"#utility.yul\":9544:9548 */\n 0x00\n /* \"#utility.yul\":9582:9584 */\n 0x20\n /* \"#utility.yul\":9571:9580 */\n dup3\n /* \"#utility.yul\":9567:9585 */\n add\n /* \"#utility.yul\":9559:9585 */\n swap1\n pop\n /* \"#utility.yul\":9631:9640 */\n dup2\n /* \"#utility.yul\":9625:9629 */\n dup2\n /* \"#utility.yul\":9621:9641 */\n sub\n /* \"#utility.yul\":9617:9618 */\n 0x00\n /* \"#utility.yul\":9606:9615 */\n dup4\n /* \"#utility.yul\":9602:9619 */\n add\n /* \"#utility.yul\":9595:9642 */\n mstore\n /* \"#utility.yul\":9659:9790 */\n tag_210\n /* \"#utility.yul\":9785:9789 */\n dup2\n /* \"#utility.yul\":9659:9790 */\n tag_104\n jump\t// in\n tag_210:\n /* \"#utility.yul\":9651:9790 */\n swap1\n pop\n /* \"#utility.yul\":9378:9797 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":9803:10027 */\n tag_105:\n /* \"#utility.yul\":9943:9977 */\n 0x5468652076616c7565206973206e6f742073756666696369656e74206f722065\n /* \"#utility.yul\":9939:9940 */\n 0x00\n /* \"#utility.yul\":9931:9937 */\n dup3\n /* \"#utility.yul\":9927:9941 */\n add\n /* \"#utility.yul\":9920:9978 */\n mstore\n /* \"#utility.yul\":10012:10019 */\n 0x7863656564000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":10007:10009 */\n 0x20\n /* \"#utility.yul\":9999:10005 */\n dup3\n /* \"#utility.yul\":9995:10010 */\n add\n /* \"#utility.yul\":9988:10020 */\n mstore\n /* \"#utility.yul\":9803:10027 */\n pop\n jump\t// out\n /* \"#utility.yul\":10033:10399 */\n tag_106:\n /* \"#utility.yul\":10175:10178 */\n 0x00\n /* \"#utility.yul\":10196:10263 */\n tag_213\n /* \"#utility.yul\":10260:10262 */\n 0x25\n /* \"#utility.yul\":10255:10258 */\n dup4\n /* \"#utility.yul\":10196:10263 */\n tag_99\n jump\t// in\n tag_213:\n /* \"#utility.yul\":10189:10263 */\n swap2\n pop\n /* \"#utility.yul\":10272:10365 */\n tag_214\n /* \"#utility.yul\":10361:10364 */\n dup3\n /* \"#utility.yul\":10272:10365 */\n tag_105\n jump\t// in\n tag_214:\n /* \"#utility.yul\":10390:10392 */\n 0x40\n /* \"#utility.yul\":10385:10388 */\n dup3\n /* \"#utility.yul\":10381:10393 */\n add\n /* \"#utility.yul\":10374:10393 */\n swap1\n pop\n /* \"#utility.yul\":10033:10399 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":10405:10824 */\n tag_43:\n /* \"#utility.yul\":10571:10575 */\n 0x00\n /* \"#utility.yul\":10609:10611 */\n 0x20\n /* \"#utility.yul\":10598:10607 */\n dup3\n /* \"#utility.yul\":10594:10612 */\n add\n /* \"#utility.yul\":10586:10612 */\n swap1\n pop\n /* \"#utility.yul\":10658:10667 */\n dup2\n /* \"#utility.yul\":10652:10656 */\n dup2\n /* \"#utility.yul\":10648:10668 */\n sub\n /* \"#utility.yul\":10644:10645 */\n 0x00\n /* \"#utility.yul\":10633:10642 */\n dup4\n /* \"#utility.yul\":10629:10646 */\n add\n /* \"#utility.yul\":10622:10669 */\n mstore\n /* \"#utility.yul\":10686:10817 */\n tag_216\n /* \"#utility.yul\":10812:10816 */\n dup2\n /* \"#utility.yul\":10686:10817 */\n tag_106\n jump\t// in\n tag_216:\n /* \"#utility.yul\":10678:10817 */\n swap1\n pop\n /* \"#utility.yul\":10405:10824 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":10830:11010 */\n tag_49:\n /* \"#utility.yul\":10878:10955 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":10875:10876 */\n 0x00\n /* \"#utility.yul\":10868:10956 */\n mstore\n /* \"#utility.yul\":10975:10979 */\n 0x32\n /* \"#utility.yul\":10972:10973 */\n 0x04\n /* \"#utility.yul\":10965:10980 */\n mstore\n /* \"#utility.yul\":10999:11003 */\n 0x24\n /* \"#utility.yul\":10996:10997 */\n 0x00\n /* \"#utility.yul\":10989:11004 */\n revert\n /* \"#utility.yul\":11016:11207 */\n tag_51:\n /* \"#utility.yul\":11056:11060 */\n 0x00\n /* \"#utility.yul\":11076:11096 */\n tag_219\n /* \"#utility.yul\":11094:11095 */\n dup3\n /* \"#utility.yul\":11076:11096 */\n tag_94\n jump\t// in\n tag_219:\n /* \"#utility.yul\":11071:11096 */\n swap2\n pop\n /* \"#utility.yul\":11110:11130 */\n tag_220\n /* \"#utility.yul\":11128:11129 */\n dup4\n /* \"#utility.yul\":11110:11130 */\n tag_94\n jump\t// in\n tag_220:\n /* \"#utility.yul\":11105:11130 */\n swap3\n pop\n /* \"#utility.yul\":11149:11150 */\n dup3\n /* \"#utility.yul\":11146:11147 */\n dup3\n /* \"#utility.yul\":11143:11151 */\n lt\n /* \"#utility.yul\":11140:11174 */\n iszero\n tag_221\n jumpi\n /* \"#utility.yul\":11154:11172 */\n tag_222\n tag_102\n jump\t// in\n tag_222:\n /* \"#utility.yul\":11140:11174 */\n tag_221:\n /* \"#utility.yul\":11199:11200 */\n dup3\n /* \"#utility.yul\":11196:11197 */\n dup3\n /* \"#utility.yul\":11192:11201 */\n sub\n /* \"#utility.yul\":11184:11201 */\n swap1\n pop\n /* \"#utility.yul\":11016:11207 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":11213:11446 */\n tag_59:\n /* \"#utility.yul\":11252:11255 */\n 0x00\n /* \"#utility.yul\":11275:11299 */\n tag_224\n /* \"#utility.yul\":11293:11298 */\n dup3\n /* \"#utility.yul\":11275:11299 */\n tag_94\n jump\t// in\n tag_224:\n /* \"#utility.yul\":11266:11299 */\n swap2\n pop\n /* \"#utility.yul\":11321:11387 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":11314:11319 */\n dup3\n /* \"#utility.yul\":11311:11388 */\n sub\n /* \"#utility.yul\":11308:11411 */\n tag_225\n jumpi\n /* \"#utility.yul\":11391:11409 */\n tag_226\n tag_102\n jump\t// in\n tag_226:\n /* \"#utility.yul\":11308:11411 */\n tag_225:\n /* \"#utility.yul\":11438:11439 */\n 0x01\n /* \"#utility.yul\":11431:11436 */\n dup3\n /* \"#utility.yul\":11427:11440 */\n add\n /* \"#utility.yul\":11420:11440 */\n swap1\n pop\n /* \"#utility.yul\":11213:11446 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":11452:11800 */\n tag_70:\n /* \"#utility.yul\":11492:11499 */\n 0x00\n /* \"#utility.yul\":11515:11535 */\n tag_228\n /* \"#utility.yul\":11533:11534 */\n dup3\n /* \"#utility.yul\":11515:11535 */\n tag_94\n jump\t// in\n tag_228:\n /* \"#utility.yul\":11510:11535 */\n swap2\n pop\n /* \"#utility.yul\":11549:11569 */\n tag_229\n /* \"#utility.yul\":11567:11568 */\n dup4\n /* \"#utility.yul\":11549:11569 */\n tag_94\n jump\t// in\n tag_229:\n /* \"#utility.yul\":11544:11569 */\n swap3\n pop\n /* \"#utility.yul\":11737:11738 */\n dup2\n /* \"#utility.yul\":11669:11735 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":11665:11739 */\n div\n /* \"#utility.yul\":11662:11663 */\n dup4\n /* \"#utility.yul\":11659:11740 */\n gt\n /* \"#utility.yul\":11654:11655 */\n dup3\n /* \"#utility.yul\":11647:11656 */\n iszero\n /* \"#utility.yul\":11640:11657 */\n iszero\n /* \"#utility.yul\":11636:11741 */\n and\n /* \"#utility.yul\":11633:11764 */\n iszero\n tag_230\n jumpi\n /* \"#utility.yul\":11744:11762 */\n tag_231\n tag_102\n jump\t// in\n tag_231:\n /* \"#utility.yul\":11633:11764 */\n tag_230:\n /* \"#utility.yul\":11792:11793 */\n dup3\n /* \"#utility.yul\":11789:11790 */\n dup3\n /* \"#utility.yul\":11785:11794 */\n mul\n /* \"#utility.yul\":11774:11794 */\n swap1\n pop\n /* \"#utility.yul\":11452:11800 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n\n auxdata: 0xa264697066735822122017854f76ef0841a3b76f970a7e0ba51dd25e994ce305699b02c49de13309a02964736f6c634300080f0033\n}\n",
"bytecode": {
"functionDebugData": {
"@_46": {
"entryPoint": null,
"id": 46,
"parameterSlots": 0,
"returnSlots": 0
}
},
"generatedSources": [],
"linkReferences": {},
"object": "6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a334600181905550610c0b806100d56000396000f3fe60806040526004361061003f5760003560e01c80635516191314610044578063893d20e81461004e578063a6f9dae114610079578063c0722f37146100a2575b600080fd5b61004c6100be565b005b34801561005a57600080fd5b50610063610167565b604051610070919061051a565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b9190610575565b610190565b005b6100bc60048036038101906100b79190610832565b6102db565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014390610907565b60405180910390fd5b346001600082825461015e9190610956565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461021e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161021590610907565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b34600160008282546102ed9190610956565b925050819055508051825114610338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032f90610a1e565b60405180910390fd5b600061034382610420565b905080600154101561038a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038190610ab0565b60405180910390fd5b60005b835181101561041a578281815181106103a9576103a8610ad0565b5b6020026020010151600160008282546103c29190610aff565b925050819055506104078482815181106103df576103de610ad0565b5b60200260200101518483815181106103fa576103f9610ad0565b5b6020026020010151610478565b808061041290610b33565b91505061038d565b50505050565b6000806000905060005b835181101561046e5783818151811061044657610445610ad0565b5b6020026020010151826104599190610956565b9150808061046690610b33565b91505061042a565b5080915050919050565b670de0b6b3a76400008161048c9190610b7b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156104d4573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610504826104d9565b9050919050565b610514816104f9565b82525050565b600060208201905061052f600083018461050b565b92915050565b6000604051905090565b600080fd5b600080fd5b610552816104f9565b811461055d57600080fd5b50565b60008135905061056f81610549565b92915050565b60006020828403121561058b5761058a61053f565b5b600061059984828501610560565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6105f0826105a7565b810181811067ffffffffffffffff8211171561060f5761060e6105b8565b5b80604052505050565b6000610622610535565b905061062e82826105e7565b919050565b600067ffffffffffffffff82111561064e5761064d6105b8565b5b602082029050602081019050919050565b600080fd5b600061066f826104d9565b9050919050565b61067f81610664565b811461068a57600080fd5b50565b60008135905061069c81610676565b92915050565b60006106b56106b084610633565b610618565b905080838252602082019050602084028301858111156106d8576106d761065f565b5b835b8181101561070157806106ed888261068d565b8452602084019350506020810190506106da565b5050509392505050565b600082601f8301126107205761071f6105a2565b5b81356107308482602086016106a2565b91505092915050565b600067ffffffffffffffff821115610754576107536105b8565b5b602082029050602081019050919050565b6000819050919050565b61077881610765565b811461078357600080fd5b50565b6000813590506107958161076f565b92915050565b60006107ae6107a984610739565b610618565b905080838252602082019050602084028301858111156107d1576107d061065f565b5b835b818110156107fa57806107e68882610786565b8452602084019350506020810190506107d3565b5050509392505050565b600082601f830112610819576108186105a2565b5b813561082984826020860161079b565b91505092915050565b600080604083850312156108495761084861053f565b5b600083013567ffffffffffffffff81111561086757610866610544565b5b6108738582860161070b565b925050602083013567ffffffffffffffff81111561089457610893610544565b5b6108a085828601610804565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006108f16013836108aa565b91506108fc826108bb565b602082019050919050565b60006020820190508181036000830152610920816108e4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061096182610765565b915061096c83610765565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156109a1576109a0610927565b5b828201905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610a08602a836108aa565b9150610a13826109ac565b604082019050919050565b60006020820190508181036000830152610a37816109fb565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610a9a6025836108aa565b9150610aa582610a3e565b604082019050919050565b60006020820190508181036000830152610ac981610a8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610b0a82610765565b9150610b1583610765565b925082821015610b2857610b27610927565b5b828203905092915050565b6000610b3e82610765565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610b7057610b6f610927565b5b600182019050919050565b6000610b8682610765565b9150610b9183610765565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610bca57610bc9610927565b5b82820290509291505056fea264697066735822122017854f76ef0841a3b76f970a7e0ba51dd25e994ce305699b02c49de13309a02964736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLER PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 CALLVALUE PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH2 0xC0B DUP1 PUSH2 0xD5 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x44 JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x4E JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0x79 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xA2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4C PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x63 PUSH2 0x167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70 SWAP2 SWAP1 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9B SWAP2 SWAP1 PUSH2 0x575 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x832 JUMP JUMPDEST PUSH2 0x2DB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x143 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15E SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x21E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x215 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2ED SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32F SWAP1 PUSH2 0xA1E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x343 DUP3 PUSH2 0x420 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x38A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x381 SWAP1 PUSH2 0xAB0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x41A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x3A9 JUMPI PUSH2 0x3A8 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0xAFF JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x407 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3DF JUMPI PUSH2 0x3DE PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3FA JUMPI PUSH2 0x3F9 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x478 JUMP JUMPDEST DUP1 DUP1 PUSH2 0x412 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x38D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x46E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x446 JUMPI PUSH2 0x445 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x459 SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x466 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x42A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x48C SWAP2 SWAP1 PUSH2 0xB7B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x4D4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x514 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x52F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x50B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x552 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP2 EQ PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x56F DUP2 PUSH2 0x549 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58B JUMPI PUSH2 0x58A PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x599 DUP5 DUP3 DUP6 ADD PUSH2 0x560 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x5F0 DUP3 PUSH2 0x5A7 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x60F JUMPI PUSH2 0x60E PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x622 PUSH2 0x535 JUMP JUMPDEST SWAP1 POP PUSH2 0x62E DUP3 DUP3 PUSH2 0x5E7 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x64E JUMPI PUSH2 0x64D PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x66F DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x67F DUP2 PUSH2 0x664 JUMP JUMPDEST DUP2 EQ PUSH2 0x68A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x69C DUP2 PUSH2 0x676 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B5 PUSH2 0x6B0 DUP5 PUSH2 0x633 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6D8 JUMPI PUSH2 0x6D7 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x701 JUMPI DUP1 PUSH2 0x6ED DUP9 DUP3 PUSH2 0x68D JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6DA JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x720 JUMPI PUSH2 0x71F PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x730 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x754 JUMPI PUSH2 0x753 PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x778 DUP2 PUSH2 0x765 JUMP JUMPDEST DUP2 EQ PUSH2 0x783 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x795 DUP2 PUSH2 0x76F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AE PUSH2 0x7A9 DUP5 PUSH2 0x739 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7D1 JUMPI PUSH2 0x7D0 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x7FA JUMPI DUP1 PUSH2 0x7E6 DUP9 DUP3 PUSH2 0x786 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7D3 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x819 JUMPI PUSH2 0x818 PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x829 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x79B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x849 JUMPI PUSH2 0x848 PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x866 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x873 DUP6 DUP3 DUP7 ADD PUSH2 0x70B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x893 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x8A0 DUP6 DUP3 DUP7 ADD PUSH2 0x804 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F1 PUSH1 0x13 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0x8FC DUP3 PUSH2 0x8BB 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 PUSH2 0x920 DUP2 PUSH2 0x8E4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x961 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0x96C DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x9A1 JUMPI PUSH2 0x9A0 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA08 PUSH1 0x2A DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xA13 DUP3 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xA37 DUP2 PUSH2 0x9FB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9A PUSH1 0x25 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xAA5 DUP3 PUSH2 0xA3E JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xAC9 DUP2 PUSH2 0xA8D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xB0A DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB15 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xB28 JUMPI PUSH2 0xB27 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xB70 JUMPI PUSH2 0xB6F PUSH2 0x927 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB86 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB91 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xBCA JUMPI PUSH2 0xBC9 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR DUP6 0x4F PUSH23 0xEF0841A3B76F970A7E0BA51DD25E994CE305699B02C49D 0xE1 CALLER MULMOD LOG0 0x29 PUSH5 0x736F6C6343 STOP ADDMOD 0xF STOP CALLER ",
"sourceMap": "68:3918:0:-:0;;;1102:10;1094:5;;:18;;;;;;;;;;;;;;;;;;1228:5;;;;;;;;;;1207:27;;1224:1;1207:27;;;;;;;;;;;;1269:9;1255:11;:23;;;;68:3918;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@changeOwner_63": {
"entryPoint": 400,
"id": 63,
"parameterSlots": 1,
"returnSlots": 0
},
"@charge_83": {
"entryPoint": 190,
"id": 83,
"parameterSlots": 0,
"returnSlots": 0
},
"@getOwner_72": {
"entryPoint": 359,
"id": 72,
"parameterSlots": 0,
"returnSlots": 1
},
"@nodePayment_135": {
"entryPoint": 1144,
"id": 135,
"parameterSlots": 2,
"returnSlots": 0
},
"@sum_117": {
"entryPoint": 1056,
"id": 117,
"parameterSlots": 1,
"returnSlots": 1
},
"@withdrawls_218": {
"entryPoint": 731,
"id": 218,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1698,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 1947,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 1376,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_address_payable": {
"entryPoint": 1677,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1803,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2052,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 1926,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 1397,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 2098,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 1291,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2276,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2701,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack": {
"entryPoint": 2555,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
"entryPoint": 1306,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2311,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2736,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 2590,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_memory": {
"entryPoint": 1560,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 1333,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr": {
"entryPoint": 1587,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr": {
"entryPoint": 1849,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 2218,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 2390,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_mul_t_uint256": {
"entryPoint": 2939,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_sub_t_uint256": {
"entryPoint": 2815,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_address": {
"entryPoint": 1273,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_address_payable": {
"entryPoint": 1636,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 1241,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 1893,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 1511,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"increment_t_uint256": {
"entryPoint": 2867,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 2343,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x32": {
"entryPoint": 2768,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 1464,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 1442,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": {
"entryPoint": 1631,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 1348,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 1343,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 1447,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d": {
"entryPoint": 2235,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649": {
"entryPoint": 2622,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1": {
"entryPoint": 2476,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 1353,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_address_payable": {
"entryPoint": 1654,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 1903,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:11803:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "52:81:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "62:65:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "77:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "84:42:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "73:3:1"
},
"nodeType": "YulFunctionCall",
"src": "73:54:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "62:7:1"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "34:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "44:7:1",
"type": ""
}
],
"src": "7:126:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "184:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "194:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "223:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "205:17:1"
},
"nodeType": "YulFunctionCall",
"src": "205:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "194:7:1"
}
]
}
]
},
"name": "cleanup_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "166:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "176:7:1",
"type": ""
}
],
"src": "139:96:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "306:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "323:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "346:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "328:17:1"
},
"nodeType": "YulFunctionCall",
"src": "328:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "316:6:1"
},
"nodeType": "YulFunctionCall",
"src": "316:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "316:37:1"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "294:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "301:3:1",
"type": ""
}
],
"src": "241:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "463:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "473:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "485:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "496:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "481:3:1"
},
"nodeType": "YulFunctionCall",
"src": "481:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "473:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "553:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "566:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "577:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "562:3:1"
},
"nodeType": "YulFunctionCall",
"src": "562:17:1"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nodeType": "YulIdentifier",
"src": "509:43:1"
},
"nodeType": "YulFunctionCall",
"src": "509:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "509:71:1"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "435:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "447:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "458:4:1",
"type": ""
}
],
"src": "365:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "633:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "643:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "659:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "653:5:1"
},
"nodeType": "YulFunctionCall",
"src": "653:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "643:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "626:6:1",
"type": ""
}
],
"src": "593:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "763:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "780:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "783:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "773:6:1"
},
"nodeType": "YulFunctionCall",
"src": "773:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "773:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "674:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "886:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "903:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "906:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "896:6:1"
},
"nodeType": "YulFunctionCall",
"src": "896:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "896:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "797:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "963:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1020:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1029:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1032:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1022:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1022:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1022:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "986:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1011:5:1"
}
],
"functionName": {
"name": "cleanup_t_address",
"nodeType": "YulIdentifier",
"src": "993:17:1"
},
"nodeType": "YulFunctionCall",
"src": "993:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "983:2:1"
},
"nodeType": "YulFunctionCall",
"src": "983:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "976:6:1"
},
"nodeType": "YulFunctionCall",
"src": "976:43:1"
},
"nodeType": "YulIf",
"src": "973:63:1"
}
]
},
"name": "validator_revert_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "956:5:1",
"type": ""
}
],
"src": "920:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1100:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1110:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1132:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1119:12:1"
},
"nodeType": "YulFunctionCall",
"src": "1119:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1110:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1175:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nodeType": "YulIdentifier",
"src": "1148:26:1"
},
"nodeType": "YulFunctionCall",
"src": "1148:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "1148:33:1"
}
]
},
"name": "abi_decode_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1078:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1086:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1094:5:1",
"type": ""
}
],
"src": "1048:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1259:263:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1305:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "1307:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1307:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1307:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1280:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1289:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1276:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1276:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1301:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1272:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1272:32:1"
},
"nodeType": "YulIf",
"src": "1269:119:1"
},
{
"nodeType": "YulBlock",
"src": "1398:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1413:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "1427:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1417:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1442:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1477:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1488:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1473:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1473:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1497:7:1"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nodeType": "YulIdentifier",
"src": "1452:20:1"
},
"nodeType": "YulFunctionCall",
"src": "1452:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1442:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1229:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1240:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1252:6:1",
"type": ""
}
],
"src": "1193:329:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1617:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1634:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1637:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1627:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1627:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1627:12:1"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulFunctionDefinition",
"src": "1528:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1699:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1709:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1727:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1734:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1723:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1723:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1743:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "1739:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1739:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "1719:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1719:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "1709:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1682:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "1692:6:1",
"type": ""
}
],
"src": "1651:102:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1787:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1804:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1807:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1797:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1797:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1797:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1901:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1904:4:1",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1894:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1894:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1894:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1925:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1928:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1918:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1918:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1918:15:1"
}
]
},
"name": "panic_error_0x41",
"nodeType": "YulFunctionDefinition",
"src": "1759:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1988:238:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1998:58:1",
"value": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2020:6:1"
},
{
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2050:4:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "2028:21:1"
},
"nodeType": "YulFunctionCall",
"src": "2028:27:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2016:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2016:40:1"
},
"variables": [
{
"name": "newFreePtr",
"nodeType": "YulTypedName",
"src": "2002:10:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "2167:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "2169:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2169:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2169:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2110:10:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2122:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2107:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2107:34:1"
},
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2146:10:1"
},
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2158:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "2143:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2143:22:1"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "2104:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2104:62:1"
},
"nodeType": "YulIf",
"src": "2101:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2205:2:1",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "2209:10:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2198:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2198:22:1"
},
"nodeType": "YulExpressionStatement",
"src": "2198:22:1"
}
]
},
"name": "finalize_allocation",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "1974:6:1",
"type": ""
},
{
"name": "size",
"nodeType": "YulTypedName",
"src": "1982:4:1",
"type": ""
}
],
"src": "1945:281:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2273:88:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2283:30:1",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nodeType": "YulIdentifier",
"src": "2293:18:1"
},
"nodeType": "YulFunctionCall",
"src": "2293:20:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2283:6:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2342:6:1"
},
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2350:4:1"
}
],
"functionName": {
"name": "finalize_allocation",
"nodeType": "YulIdentifier",
"src": "2322:19:1"
},
"nodeType": "YulFunctionCall",
"src": "2322:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "2322:33:1"
}
]
},
"name": "allocate_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "2257:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "2266:6:1",
"type": ""
}
],
"src": "2232:129:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2457:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "2562:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "2564:16:1"
},
"nodeType": "YulFunctionCall",
"src": "2564:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "2564:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2534:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2542:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "2531:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2531:30:1"
},
"nodeType": "YulIf",
"src": "2528:56:1"
},
{
"nodeType": "YulAssignment",
"src": "2594:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2606:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2614:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "2602:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2602:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2594:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "2656:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2668:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2674:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2664:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2664:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2656:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "2441:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "2452:4:1",
"type": ""
}
],
"src": "2367:319:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2781:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2798:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2801:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2791:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2791:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2791:12:1"
}
]
},
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulFunctionDefinition",
"src": "2692:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2868:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2878:35:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2907:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nodeType": "YulIdentifier",
"src": "2889:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2889:24:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "2878:7:1"
}
]
}
]
},
"name": "cleanup_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2850:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "2860:7:1",
"type": ""
}
],
"src": "2815:104:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2976:87:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "3041:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3050:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3053:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "3043:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3043:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "3043:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2999:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3032:5:1"
}
],
"functionName": {
"name": "cleanup_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3006:25:1"
},
"nodeType": "YulFunctionCall",
"src": "3006:32:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2996:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2996:43:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2989:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2989:51:1"
},
"nodeType": "YulIf",
"src": "2986:71:1"
}
]
},
"name": "validator_revert_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2969:5:1",
"type": ""
}
],
"src": "2925:138:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3129:95:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3139:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3161:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "3148:12:1"
},
"nodeType": "YulFunctionCall",
"src": "3148:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3139:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3212:5:1"
}
],
"functionName": {
"name": "validator_revert_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3177:34:1"
},
"nodeType": "YulFunctionCall",
"src": "3177:41:1"
},
"nodeType": "YulExpressionStatement",
"src": "3177:41:1"
}
]
},
"name": "abi_decode_t_address_payable",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "3107:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "3115:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3123:5:1",
"type": ""
}
],
"src": "3069:155:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3365:624:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3375:98:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3465:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "3400:64:1"
},
"nodeType": "YulFunctionCall",
"src": "3400:72:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "3384:15:1"
},
"nodeType": "YulFunctionCall",
"src": "3384:89:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3375:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3482:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "3493:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "3486:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3515:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3522:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3508:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3508:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "3508:21:1"
},
{
"nodeType": "YulAssignment",
"src": "3538:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "3549:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3556:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3545:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3545:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3538:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "3571:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3589:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3601:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3609:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "3597:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3597:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3585:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3585:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "3575:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "3643:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "3657:77:1"
},
"nodeType": "YulFunctionCall",
"src": "3657:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "3657:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "3630:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "3638:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3627:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3627:15:1"
},
"nodeType": "YulIf",
"src": "3624:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3831:152:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3846:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "3864:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "3850:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3888:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "3922:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "3934:3:1"
}
],
"functionName": {
"name": "abi_decode_t_address_payable",
"nodeType": "YulIdentifier",
"src": "3893:28:1"
},
"nodeType": "YulFunctionCall",
"src": "3893:45:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3881:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3881:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "3881:58:1"
},
{
"nodeType": "YulAssignment",
"src": "3952:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3963:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3968:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3959:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3959:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3952:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3784:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "3789:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3781:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3781:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "3797:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3799:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3810:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3815:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3806:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3806:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3799:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "3759:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3761:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "3772:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "3765:3:1",
"type": ""
}
]
}
]
},
"src": "3755:228:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "3335:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3343:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "3351:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "3359:5:1",
"type": ""
}
],
"src": "3255:734:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4105:301:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4154:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "4156:77:1"
},
"nodeType": "YulFunctionCall",
"src": "4156:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "4156:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4133:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4141:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4129:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4129:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4148:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "4125:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4125:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4118:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4118:35:1"
},
"nodeType": "YulIf",
"src": "4115:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "4246:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4273:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "4260:12:1"
},
"nodeType": "YulFunctionCall",
"src": "4260:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4250:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "4289:111:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "4373:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4381:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4369:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4369:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4388:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "4396:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "4298:70:1"
},
"nodeType": "YulFunctionCall",
"src": "4298:102:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "4289:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4083:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4091:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "4099:5:1",
"type": ""
}
],
"src": "4020:386:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4494:229:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4599:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "4601:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4601:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4601:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4571:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4579:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4568:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4568:30:1"
},
"nodeType": "YulIf",
"src": "4565:56:1"
},
{
"nodeType": "YulAssignment",
"src": "4631:25:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4643:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4651:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "4639:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4639:17:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4631:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "4693:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4705:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4711:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4701:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4701:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4693:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4478:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "4489:4:1",
"type": ""
}
],
"src": "4412:311:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4774:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4784:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "4795:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "4784:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4756:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "4766:7:1",
"type": ""
}
],
"src": "4729:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4855:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "4912:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4921:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4924:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4914:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4914:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "4914:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4878:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "4903:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "4885:17:1"
},
"nodeType": "YulFunctionCall",
"src": "4885:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "4875:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4875:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4868:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4868:43:1"
},
"nodeType": "YulIf",
"src": "4865:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4848:5:1",
"type": ""
}
],
"src": "4812:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4992:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5002:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5024:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "5011:12:1"
},
"nodeType": "YulFunctionCall",
"src": "5011:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5002:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5067:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "5040:26:1"
},
"nodeType": "YulFunctionCall",
"src": "5040:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "5040:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "4970:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "4978:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "4986:5:1",
"type": ""
}
],
"src": "4940:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5204:608:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5214:90:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5296:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "5239:56:1"
},
"nodeType": "YulFunctionCall",
"src": "5239:64:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "5223:15:1"
},
"nodeType": "YulFunctionCall",
"src": "5223:81:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5214:5:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5313:16:1",
"value": {
"name": "array",
"nodeType": "YulIdentifier",
"src": "5324:5:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "5317:3:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5346:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5353:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5339:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5339:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "5339:21:1"
},
{
"nodeType": "YulAssignment",
"src": "5369:23:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "5380:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5387:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5376:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5376:16:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5369:3:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "5402:44:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5420:6:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "5432:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5440:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "5428:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5428:17:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5416:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5416:30:1"
},
"variables": [
{
"name": "srcEnd",
"nodeType": "YulTypedName",
"src": "5406:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "5474:103:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nodeType": "YulIdentifier",
"src": "5488:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5488:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5488:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "5461:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5469:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "5458:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5458:15:1"
},
"nodeType": "YulIf",
"src": "5455:122:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5662:144:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5677:21:1",
"value": {
"name": "src",
"nodeType": "YulIdentifier",
"src": "5695:3:1"
},
"variables": [
{
"name": "elementPos",
"nodeType": "YulTypedName",
"src": "5681:10:1",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5719:3:1"
},
{
"arguments": [
{
"name": "elementPos",
"nodeType": "YulIdentifier",
"src": "5745:10:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5757:3:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "5724:20:1"
},
"nodeType": "YulFunctionCall",
"src": "5724:37:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5712:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5712:50:1"
},
"nodeType": "YulExpressionStatement",
"src": "5712:50:1"
},
{
"nodeType": "YulAssignment",
"src": "5775:21:1",
"value": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5786:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5791:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5782:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5782:14:1"
},
"variableNames": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "5775:3:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5615:3:1"
},
{
"name": "srcEnd",
"nodeType": "YulIdentifier",
"src": "5620:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "5612:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5612:15:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "5628:25:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5630:21:1",
"value": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5641:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5646:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5637:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5637:14:1"
},
"variableNames": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "5630:3:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "5590:21:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "5592:17:1",
"value": {
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5603:6:1"
},
"variables": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "5596:3:1",
"type": ""
}
]
}
]
},
"src": "5586:220:1"
}
]
},
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "5174:6:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "5182:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5190:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "5198:5:1",
"type": ""
}
],
"src": "5102:710:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5912:293:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "5961:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "5963:77:1"
},
"nodeType": "YulFunctionCall",
"src": "5963:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "5963:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "5940:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5948:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5936:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5936:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "5955:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "5932:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5932:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "5925:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5925:35:1"
},
"nodeType": "YulIf",
"src": "5922:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "6053:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6080:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6067:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6067:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "6057:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "6096:103:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6172:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6180:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6168:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6168:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "6187:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "6195:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "6105:62:1"
},
"nodeType": "YulFunctionCall",
"src": "6105:94:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "6096:5:1"
}
]
}
]
},
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "5890:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "5898:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "5906:5:1",
"type": ""
}
],
"src": "5835:370:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "6352:769:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "6398:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "6400:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6400:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6400:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "6373:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6382:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "6369:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6369:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6394:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "6365:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6365:32:1"
},
"nodeType": "YulIf",
"src": "6362:119:1"
},
{
"nodeType": "YulBlock",
"src": "6491:310:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6506:45:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6537:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6548:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6533:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6533:17:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6520:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6520:31:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "6510:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "6598:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "6600:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6600:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6600:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6570:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6578:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "6567:2:1"
},
"nodeType": "YulFunctionCall",
"src": "6567:30:1"
},
"nodeType": "YulIf",
"src": "6564:117:1"
},
{
"nodeType": "YulAssignment",
"src": "6695:96:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6763:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6774:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6759:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6759:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "6783:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_address_payable_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "6705:53:1"
},
"nodeType": "YulFunctionCall",
"src": "6705:86:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "6695:6:1"
}
]
}
]
},
{
"nodeType": "YulBlock",
"src": "6811:303:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "6826:46:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "6857:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6868:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "6853:3:1"
},
"nodeType": "YulFunctionCall",
"src": "6853:18:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "6840:12:1"
},
"nodeType": "YulFunctionCall",
"src": "6840:32:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "6830:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "6919:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "6921:77:1"
},
"nodeType": "YulFunctionCall",
"src": "6921:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "6921:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "6891:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "6899:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "6888:2:1"
},
"nodeType": "YulFunctionCall",
"src": "6888:30:1"
},
"nodeType": "YulIf",
"src": "6885:117:1"
},
{
"nodeType": "YulAssignment",
"src": "7016:88:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "7076:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "7087:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7072:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7072:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "7096:7:1"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulIdentifier",
"src": "7026:45:1"
},
"nodeType": "YulFunctionCall",
"src": "7026:78:1"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "7016:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "6314:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "6325:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "6337:6:1",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "6345:6:1",
"type": ""
}
],
"src": "6211:910:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7223:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7240:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "7245:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7233:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7233:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "7233:19:1"
},
{
"nodeType": "YulAssignment",
"src": "7261:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7280:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7285:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7276:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7276:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "7261:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "7195:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "7200:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "7211:11:1",
"type": ""
}
],
"src": "7127:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7408:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "7430:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7438:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7426:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7426:14:1"
},
{
"hexValue": "43616c6c6572206973206e6f74206f776e6572",
"kind": "string",
"nodeType": "YulLiteral",
"src": "7442:21:1",
"type": "",
"value": "Caller is not owner"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "7419:6:1"
},
"nodeType": "YulFunctionCall",
"src": "7419:45:1"
},
"nodeType": "YulExpressionStatement",
"src": "7419:45:1"
}
]
},
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "7400:6:1",
"type": ""
}
],
"src": "7302:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "7623:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "7633:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7699:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7704:2:1",
"type": "",
"value": "19"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "7640:58:1"
},
"nodeType": "YulFunctionCall",
"src": "7640:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7633:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7805:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d",
"nodeType": "YulIdentifier",
"src": "7716:88:1"
},
"nodeType": "YulFunctionCall",
"src": "7716:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "7716:93:1"
},
{
"nodeType": "YulAssignment",
"src": "7818:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "7829:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "7834:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "7825:3:1"
},
"nodeType": "YulFunctionCall",
"src": "7825:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "7818:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "7611:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "7619:3:1",
"type": ""
}
],
"src": "7477:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8020:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8030:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8042:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8053:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8038:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8038:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8030:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8077:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8088:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8073:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8073:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8096:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "8102:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "8092:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8092:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8066:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8066:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "8066:47:1"
},
{
"nodeType": "YulAssignment",
"src": "8122:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8256:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "8130:124:1"
},
"nodeType": "YulFunctionCall",
"src": "8130:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "8122:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "8000:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "8015:4:1",
"type": ""
}
],
"src": "7849:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8302:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8319:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8322:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8312:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8312:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "8312:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8416:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8419:4:1",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8409:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8409:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8409:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8440:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8443:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "8433:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8433:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "8433:15:1"
}
]
},
"name": "panic_error_0x11",
"nodeType": "YulFunctionDefinition",
"src": "8274:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8504:261:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "8514:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8537:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "8519:17:1"
},
"nodeType": "YulFunctionCall",
"src": "8519:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8514:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "8548:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8571:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "8553:17:1"
},
"nodeType": "YulFunctionCall",
"src": "8553:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8548:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "8711:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "8713:16:1"
},
"nodeType": "YulFunctionCall",
"src": "8713:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "8713:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8632:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8639:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8707:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "8635:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8635:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "8629:2:1"
},
"nodeType": "YulFunctionCall",
"src": "8629:81:1"
},
"nodeType": "YulIf",
"src": "8626:107:1"
},
{
"nodeType": "YulAssignment",
"src": "8743:16:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "8754:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "8757:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8750:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8750:9:1"
},
"variableNames": [
{
"name": "sum",
"nodeType": "YulIdentifier",
"src": "8743:3:1"
}
]
}
]
},
"name": "checked_add_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "8491:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "8494:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nodeType": "YulTypedName",
"src": "8500:3:1",
"type": ""
}
],
"src": "8460:305:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "8877:123:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "8899:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8907:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8895:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8895:14:1"
},
{
"hexValue": "546865206c656e677468206f662074776f2061727261792073686f756c642062",
"kind": "string",
"nodeType": "YulLiteral",
"src": "8911:34:1",
"type": "",
"value": "The length of two array should b"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8888:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8888:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "8888:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "8967:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "8975:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "8963:3:1"
},
"nodeType": "YulFunctionCall",
"src": "8963:15:1"
},
{
"hexValue": "65207468652073616d65",
"kind": "string",
"nodeType": "YulLiteral",
"src": "8980:12:1",
"type": "",
"value": "e the same"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "8956:6:1"
},
"nodeType": "YulFunctionCall",
"src": "8956:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "8956:37:1"
}
]
},
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "8869:6:1",
"type": ""
}
],
"src": "8771:229:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9152:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9162:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9228:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9233:2:1",
"type": "",
"value": "42"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "9169:58:1"
},
"nodeType": "YulFunctionCall",
"src": "9169:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9162:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9334:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1",
"nodeType": "YulIdentifier",
"src": "9245:88:1"
},
"nodeType": "YulFunctionCall",
"src": "9245:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "9245:93:1"
},
{
"nodeType": "YulAssignment",
"src": "9347:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "9358:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9363:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9354:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9354:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "9347:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "9140:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "9148:3:1",
"type": ""
}
],
"src": "9006:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9549:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "9559:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9571:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9582:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9567:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9567:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9559:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9606:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9617:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9602:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9602:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9625:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "9631:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "9621:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9621:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9595:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9595:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "9595:47:1"
},
{
"nodeType": "YulAssignment",
"src": "9651:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9785:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "9659:124:1"
},
"nodeType": "YulFunctionCall",
"src": "9659:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "9651:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "9529:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "9544:4:1",
"type": ""
}
],
"src": "9378:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "9909:118:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9931:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "9939:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9927:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9927:14:1"
},
{
"hexValue": "5468652076616c7565206973206e6f742073756666696369656e74206f722065",
"kind": "string",
"nodeType": "YulLiteral",
"src": "9943:34:1",
"type": "",
"value": "The value is not sufficient or e"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9920:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9920:58:1"
},
"nodeType": "YulExpressionStatement",
"src": "9920:58:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "9999:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10007:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "9995:3:1"
},
"nodeType": "YulFunctionCall",
"src": "9995:15:1"
},
{
"hexValue": "7863656564",
"kind": "string",
"nodeType": "YulLiteral",
"src": "10012:7:1",
"type": "",
"value": "xceed"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "9988:6:1"
},
"nodeType": "YulFunctionCall",
"src": "9988:32:1"
},
"nodeType": "YulExpressionStatement",
"src": "9988:32:1"
}
]
},
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "9901:6:1",
"type": ""
}
],
"src": "9803:224:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10179:220:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10189:74:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10255:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10260:2:1",
"type": "",
"value": "37"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10196:58:1"
},
"nodeType": "YulFunctionCall",
"src": "10196:67:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10189:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10361:3:1"
}
],
"functionName": {
"name": "store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649",
"nodeType": "YulIdentifier",
"src": "10272:88:1"
},
"nodeType": "YulFunctionCall",
"src": "10272:93:1"
},
"nodeType": "YulExpressionStatement",
"src": "10272:93:1"
},
{
"nodeType": "YulAssignment",
"src": "10374:19:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "10385:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10390:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10381:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10381:12:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "10374:3:1"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "10167:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "10175:3:1",
"type": ""
}
],
"src": "10033:366:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10576:248:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "10586:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10598:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10609:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10594:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10594:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10586:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10633:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10644:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "10629:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10629:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10652:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "10658:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "10648:3:1"
},
"nodeType": "YulFunctionCall",
"src": "10648:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10622:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10622:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "10622:47:1"
},
{
"nodeType": "YulAssignment",
"src": "10678:139:1",
"value": {
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10812:4:1"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "10686:124:1"
},
"nodeType": "YulFunctionCall",
"src": "10686:131:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "10678:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "10556:9:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "10571:4:1",
"type": ""
}
],
"src": "10405:419:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "10858:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10875:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10878:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10868:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10868:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "10868:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10972:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10975:4:1",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "10965:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10965:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "10965:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10996:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "10999:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "10989:6:1"
},
"nodeType": "YulFunctionCall",
"src": "10989:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "10989:15:1"
}
]
},
"name": "panic_error_0x32",
"nodeType": "YulFunctionDefinition",
"src": "10830:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11061:146:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11071:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11094:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11076:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11076:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11071:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "11105:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11128:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11110:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11110:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11105:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11152:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11154:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11154:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11154:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11146:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11149:1:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "11143:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11143:8:1"
},
"nodeType": "YulIf",
"src": "11140:34:1"
},
{
"nodeType": "YulAssignment",
"src": "11184:17:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11196:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11199:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "11192:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11192:9:1"
},
"variableNames": [
{
"name": "diff",
"nodeType": "YulIdentifier",
"src": "11184:4:1"
}
]
}
]
},
"name": "checked_sub_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "11047:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "11050:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "diff",
"nodeType": "YulTypedName",
"src": "11056:4:1",
"type": ""
}
],
"src": "11016:191:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11256:190:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11266:33:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11293:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11275:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11275:24:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11266:5:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11389:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11391:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11391:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11391:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11314:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11321:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "11311:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11311:77:1"
},
"nodeType": "YulIf",
"src": "11308:103:1"
},
{
"nodeType": "YulAssignment",
"src": "11420:20:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "11431:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11438:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "11427:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11427:13:1"
},
"variableNames": [
{
"name": "ret",
"nodeType": "YulIdentifier",
"src": "11420:3:1"
}
]
}
]
},
"name": "increment_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "11242:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nodeType": "YulTypedName",
"src": "11252:3:1",
"type": ""
}
],
"src": "11213:233:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "11500:300:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "11510:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11533:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11515:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11515:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11510:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "11544:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11567:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "11549:17:1"
},
"nodeType": "YulFunctionCall",
"src": "11549:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11544:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "11742:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "11744:16:1"
},
"nodeType": "YulFunctionCall",
"src": "11744:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "11744:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11654:1:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "11647:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11647:9:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "11640:6:1"
},
"nodeType": "YulFunctionCall",
"src": "11640:17:1"
},
{
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11662:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "11669:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11737:1:1"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "11665:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11665:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "11659:2:1"
},
"nodeType": "YulFunctionCall",
"src": "11659:81:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "11636:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11636:105:1"
},
"nodeType": "YulIf",
"src": "11633:131:1"
},
{
"nodeType": "YulAssignment",
"src": "11774:20:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "11789:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "11792:1:1"
}
],
"functionName": {
"name": "mul",
"nodeType": "YulIdentifier",
"src": "11785:3:1"
},
"nodeType": "YulFunctionCall",
"src": "11785:9:1"
},
"variableNames": [
{
"name": "product",
"nodeType": "YulIdentifier",
"src": "11774:7:1"
}
]
}
]
},
"name": "checked_mul_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "11483:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "11486:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "product",
"nodeType": "YulTypedName",
"src": "11492:7:1",
"type": ""
}
],
"src": "11452:348:1"
}
]
},
"contents": "{\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\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 panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n function cleanup_t_address_payable(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address_payable(value) {\n if iszero(eq(value, cleanup_t_address_payable(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_payable(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address_payable(value)\n }\n\n // address payable[]\n function abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_address_payable_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_address_payable(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // address payable[]\n function abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_address_payable_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := mul(length, 0x20)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let srcEnd := add(offset, mul(length, 0x20))\n if gt(srcEnd, end) {\n revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n }\n for { let src := offset } lt(src, srcEnd) { src := add(src, 0x20) }\n {\n\n let elementPos := src\n\n mstore(dst, abi_decode_t_uint256(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_address_payable_$dyn_memory_ptrt_array$_t_uint256_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_address_payable_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not owner\")\n\n }\n\n function abi_encode_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 19)\n store_literal_in_memory_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d__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_2d10247a65709fdb3c0696b0ed760a0c246e12f8c496efb56291dd2fe3b0275d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_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 store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(memPtr) {\n\n mstore(add(memPtr, 0), \"The length of two array should b\")\n\n mstore(add(memPtr, 32), \"e the same\")\n\n }\n\n function abi_encode_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1__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_364f4340a15bed67d263a842b9cd2179e8a7f8d5bfa484d1b8cd0af1fe2631d1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(memPtr) {\n\n mstore(add(memPtr, 0), \"The value is not sufficient or e\")\n\n mstore(add(memPtr, 32), \"xceed\")\n\n }\n\n function abi_encode_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649__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_2fb65d3aa7fdd720d6ce9573697d8199e914e06a0738456b947b51c6ccb57649_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\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 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 checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "60806040526004361061003f5760003560e01c80635516191314610044578063893d20e81461004e578063a6f9dae114610079578063c0722f37146100a2575b600080fd5b61004c6100be565b005b34801561005a57600080fd5b50610063610167565b604051610070919061051a565b60405180910390f35b34801561008557600080fd5b506100a0600480360381019061009b9190610575565b610190565b005b6100bc60048036038101906100b79190610832565b6102db565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014390610907565b60405180910390fd5b346001600082825461015e9190610956565b92505081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461021e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161021590610907565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f342827c97908e5e2f71151c08502a66d44b6f758e3ac2f1de95f02eb95f0a73560405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b34600160008282546102ed9190610956565b925050819055508051825114610338576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032f90610a1e565b60405180910390fd5b600061034382610420565b905080600154101561038a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161038190610ab0565b60405180910390fd5b60005b835181101561041a578281815181106103a9576103a8610ad0565b5b6020026020010151600160008282546103c29190610aff565b925050819055506104078482815181106103df576103de610ad0565b5b60200260200101518483815181106103fa576103f9610ad0565b5b6020026020010151610478565b808061041290610b33565b91505061038d565b50505050565b6000806000905060005b835181101561046e5783818151811061044657610445610ad0565b5b6020026020010151826104599190610956565b9150808061046690610b33565b91505061042a565b5080915050919050565b670de0b6b3a76400008161048c9190610b7b565b90508173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156104d4573d6000803e3d6000fd5b505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610504826104d9565b9050919050565b610514816104f9565b82525050565b600060208201905061052f600083018461050b565b92915050565b6000604051905090565b600080fd5b600080fd5b610552816104f9565b811461055d57600080fd5b50565b60008135905061056f81610549565b92915050565b60006020828403121561058b5761058a61053f565b5b600061059984828501610560565b91505092915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6105f0826105a7565b810181811067ffffffffffffffff8211171561060f5761060e6105b8565b5b80604052505050565b6000610622610535565b905061062e82826105e7565b919050565b600067ffffffffffffffff82111561064e5761064d6105b8565b5b602082029050602081019050919050565b600080fd5b600061066f826104d9565b9050919050565b61067f81610664565b811461068a57600080fd5b50565b60008135905061069c81610676565b92915050565b60006106b56106b084610633565b610618565b905080838252602082019050602084028301858111156106d8576106d761065f565b5b835b8181101561070157806106ed888261068d565b8452602084019350506020810190506106da565b5050509392505050565b600082601f8301126107205761071f6105a2565b5b81356107308482602086016106a2565b91505092915050565b600067ffffffffffffffff821115610754576107536105b8565b5b602082029050602081019050919050565b6000819050919050565b61077881610765565b811461078357600080fd5b50565b6000813590506107958161076f565b92915050565b60006107ae6107a984610739565b610618565b905080838252602082019050602084028301858111156107d1576107d061065f565b5b835b818110156107fa57806107e68882610786565b8452602084019350506020810190506107d3565b5050509392505050565b600082601f830112610819576108186105a2565b5b813561082984826020860161079b565b91505092915050565b600080604083850312156108495761084861053f565b5b600083013567ffffffffffffffff81111561086757610866610544565b5b6108738582860161070b565b925050602083013567ffffffffffffffff81111561089457610893610544565b5b6108a085828601610804565b9150509250929050565b600082825260208201905092915050565b7f43616c6c6572206973206e6f74206f776e657200000000000000000000000000600082015250565b60006108f16013836108aa565b91506108fc826108bb565b602082019050919050565b60006020820190508181036000830152610920816108e4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061096182610765565b915061096c83610765565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156109a1576109a0610927565b5b828201905092915050565b7f546865206c656e677468206f662074776f2061727261792073686f756c64206260008201527f65207468652073616d6500000000000000000000000000000000000000000000602082015250565b6000610a08602a836108aa565b9150610a13826109ac565b604082019050919050565b60006020820190508181036000830152610a37816109fb565b9050919050565b7f5468652076616c7565206973206e6f742073756666696369656e74206f72206560008201527f7863656564000000000000000000000000000000000000000000000000000000602082015250565b6000610a9a6025836108aa565b9150610aa582610a3e565b604082019050919050565b60006020820190508181036000830152610ac981610a8d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000610b0a82610765565b9150610b1583610765565b925082821015610b2857610b27610927565b5b828203905092915050565b6000610b3e82610765565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610b7057610b6f610927565b5b600182019050919050565b6000610b8682610765565b9150610b9183610765565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610bca57610bc9610927565b5b82820290509291505056fea264697066735822122017854f76ef0841a3b76f970a7e0ba51dd25e994ce305699b02c49de13309a02964736f6c634300080f0033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x3F JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x55161913 EQ PUSH2 0x44 JUMPI DUP1 PUSH4 0x893D20E8 EQ PUSH2 0x4E JUMPI DUP1 PUSH4 0xA6F9DAE1 EQ PUSH2 0x79 JUMPI DUP1 PUSH4 0xC0722F37 EQ PUSH2 0xA2 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4C PUSH2 0xBE JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x63 PUSH2 0x167 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x70 SWAP2 SWAP1 PUSH2 0x51A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9B SWAP2 SWAP1 PUSH2 0x575 JUMP JUMPDEST PUSH2 0x190 JUMP JUMPDEST STOP JUMPDEST PUSH2 0xBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB7 SWAP2 SWAP1 PUSH2 0x832 JUMP JUMPDEST PUSH2 0x2DB JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x143 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x15E SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x21E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x215 SWAP1 PUSH2 0x907 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 DUP1 PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST CALLVALUE PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2ED SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 MLOAD DUP3 MLOAD EQ PUSH2 0x338 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x32F SWAP1 PUSH2 0xA1E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x343 DUP3 PUSH2 0x420 JUMP JUMPDEST SWAP1 POP DUP1 PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x38A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x381 SWAP1 PUSH2 0xAB0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x41A JUMPI DUP3 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x3A9 JUMPI PUSH2 0x3A8 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0xAFF JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH2 0x407 DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x3DF JUMPI PUSH2 0x3DE PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3FA JUMPI PUSH2 0x3F9 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x478 JUMP JUMPDEST DUP1 DUP1 PUSH2 0x412 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x38D JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 MLOAD DUP2 LT ISZERO PUSH2 0x46E JUMPI DUP4 DUP2 DUP2 MLOAD DUP2 LT PUSH2 0x446 JUMPI PUSH2 0x445 PUSH2 0xAD0 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD DUP3 PUSH2 0x459 SWAP2 SWAP1 PUSH2 0x956 JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0x466 SWAP1 PUSH2 0xB33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x42A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH8 0xDE0B6B3A7640000 DUP2 PUSH2 0x48C SWAP2 SWAP1 PUSH2 0xB7B JUMP JUMPDEST SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x4D4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x514 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x52F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x50B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x552 DUP2 PUSH2 0x4F9 JUMP JUMPDEST DUP2 EQ PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x56F DUP2 PUSH2 0x549 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x58B JUMPI PUSH2 0x58A PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x599 DUP5 DUP3 DUP6 ADD PUSH2 0x560 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x5F0 DUP3 PUSH2 0x5A7 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x60F JUMPI PUSH2 0x60E PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x622 PUSH2 0x535 JUMP JUMPDEST SWAP1 POP PUSH2 0x62E DUP3 DUP3 PUSH2 0x5E7 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x64E JUMPI PUSH2 0x64D PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x66F DUP3 PUSH2 0x4D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x67F DUP2 PUSH2 0x664 JUMP JUMPDEST DUP2 EQ PUSH2 0x68A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x69C DUP2 PUSH2 0x676 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B5 PUSH2 0x6B0 DUP5 PUSH2 0x633 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x6D8 JUMPI PUSH2 0x6D7 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x701 JUMPI DUP1 PUSH2 0x6ED DUP9 DUP3 PUSH2 0x68D JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x6DA JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x720 JUMPI PUSH2 0x71F PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x730 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x6A2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x754 JUMPI PUSH2 0x753 PUSH2 0x5B8 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP3 MUL SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x778 DUP2 PUSH2 0x765 JUMP JUMPDEST DUP2 EQ PUSH2 0x783 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x795 DUP2 PUSH2 0x76F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7AE PUSH2 0x7A9 DUP5 PUSH2 0x739 JUMP JUMPDEST PUSH2 0x618 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0x20 DUP5 MUL DUP4 ADD DUP6 DUP2 GT ISZERO PUSH2 0x7D1 JUMPI PUSH2 0x7D0 PUSH2 0x65F JUMP JUMPDEST JUMPDEST DUP4 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x7FA JUMPI DUP1 PUSH2 0x7E6 DUP9 DUP3 PUSH2 0x786 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x7D3 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x819 JUMPI PUSH2 0x818 PUSH2 0x5A2 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x829 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x79B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x849 JUMPI PUSH2 0x848 PUSH2 0x53F JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x866 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x873 DUP6 DUP3 DUP7 ADD PUSH2 0x70B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x893 PUSH2 0x544 JUMP JUMPDEST JUMPDEST PUSH2 0x8A0 DUP6 DUP3 DUP7 ADD PUSH2 0x804 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x43616C6C6572206973206E6F74206F776E657200000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8F1 PUSH1 0x13 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0x8FC DUP3 PUSH2 0x8BB 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 PUSH2 0x920 DUP2 PUSH2 0x8E4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x961 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0x96C DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x9A1 JUMPI PUSH2 0x9A0 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x546865206C656E677468206F662074776F2061727261792073686F756C642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65207468652073616D6500000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA08 PUSH1 0x2A DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xA13 DUP3 PUSH2 0x9AC JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xA37 DUP2 PUSH2 0x9FB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5468652076616C7565206973206E6F742073756666696369656E74206F722065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7863656564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9A PUSH1 0x25 DUP4 PUSH2 0x8AA JUMP JUMPDEST SWAP2 POP PUSH2 0xAA5 DUP3 PUSH2 0xA3E JUMP JUMPDEST PUSH1 0x40 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 PUSH2 0xAC9 DUP2 PUSH2 0xA8D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xB0A DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB15 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0xB28 JUMPI PUSH2 0xB27 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB3E DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 SUB PUSH2 0xB70 JUMPI PUSH2 0xB6F PUSH2 0x927 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB86 DUP3 PUSH2 0x765 JUMP JUMPDEST SWAP2 POP PUSH2 0xB91 DUP4 PUSH2 0x765 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0xBCA JUMPI PUSH2 0xBC9 PUSH2 0x927 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 OR DUP6 0x4F PUSH23 0xEF0841A3B76F970A7E0BA51DD25E994CE305699B02C49D 0xE1 CALLER MULMOD LOG0 0x29 PUSH5 0x736F6C6343 STOP ADDMOD 0xF STOP CALLER ",
"sourceMap": "68:3918:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1831:143;;;:::i;:::-;;1667:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1438:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2934:1043;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1831:143;939:5;;;;;;;;;;925:19;;:10;:19;;;917:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1957:9:::1;1942:11;;:24;;;;;;;:::i;:::-;;;;;;;;1831:143::o:0;1667:83::-;1710:7;1737:5;;;;;;;;;;;1730:12;;1667:83;:::o;1438:131::-;939:5;;;;;;;;;;925:19;;:10;:19;;;917:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;1524:8:::1;1508:25;;1517:5;::::0;::::1;;;;;;;;1508:25;;;;;;;;;;;;1552:8;1544:5;::::0;:16:::1;;;;;;;;;;;;;;;;;;1438:131:::0;:::o;2934:1043::-;3171:9;3156:11;;:24;;;;;;;:::i;:::-;;;;;;;;3288:5;:12;3272:5;:12;:28;3264:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;3467:14;3484:10;3488:5;3484:3;:10::i;:::-;3467:27;;3538:9;3523:11;;:24;;3515:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;3625:6;3620:350;3639:5;:12;3635:1;:16;3620:350;;;3831:5;3837:1;3831:8;;;;;;;;:::i;:::-;;;;;;;;3816:11;;:23;;;;;;;:::i;:::-;;;;;;;;3927:31;3939:5;3945:1;3939:8;;;;;;;;:::i;:::-;;;;;;;;3949:5;3955:1;3949:8;;;;;;;;:::i;:::-;;;;;;;;3927:11;:31::i;:::-;3653:3;;;;;:::i;:::-;;;;3620:350;;;;3022:955;2934:1043;;:::o;2058:321::-;2116:11;2206:14;2223:1;2206:18;;2250:6;2245:90;2264:7;:14;2260:1;:18;2245:90;;;2313:7;2321:1;2313:10;;;;;;;;:::i;:::-;;;;;;;;2300:23;;;;;:::i;:::-;;;2280:3;;;;;:::i;:::-;;;;2245:90;;;;2362:9;2355:16;;;2058:321;;;:::o;2442:176::-;2545:19;2531:33;;;;;:::i;:::-;;;2575:12;:21;;:35;2597:12;2575:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2442:176;;:::o;7:126:1:-;44:7;84:42;77:5;73:54;62:65;;7:126;;;:::o;139:96::-;176:7;205:24;223:5;205:24;:::i;:::-;194:35;;139:96;;;:::o;241:118::-;328:24;346:5;328:24;:::i;:::-;323:3;316:37;241:118;;:::o;365:222::-;458:4;496:2;485:9;481:18;473:26;;509:71;577:1;566:9;562:17;553:6;509:71;:::i;:::-;365:222;;;;:::o;593:75::-;626:6;659:2;653:9;643:19;;593:75;:::o;674:117::-;783:1;780;773:12;797:117;906:1;903;896:12;920:122;993:24;1011:5;993:24;:::i;:::-;986:5;983:35;973:63;;1032:1;1029;1022:12;973:63;920:122;:::o;1048:139::-;1094:5;1132:6;1119:20;1110:29;;1148:33;1175:5;1148:33;:::i;:::-;1048:139;;;;:::o;1193:329::-;1252:6;1301:2;1289:9;1280:7;1276:23;1272:32;1269:119;;;1307:79;;:::i;:::-;1269:119;1427:1;1452:53;1497:7;1488:6;1477:9;1473:22;1452:53;:::i;:::-;1442:63;;1398:117;1193:329;;;;:::o;1528:117::-;1637:1;1634;1627:12;1651:102;1692:6;1743:2;1739:7;1734:2;1727:5;1723:14;1719:28;1709:38;;1651:102;;;:::o;1759:180::-;1807:77;1804:1;1797:88;1904:4;1901:1;1894:15;1928:4;1925:1;1918:15;1945:281;2028:27;2050:4;2028:27;:::i;:::-;2020:6;2016:40;2158:6;2146:10;2143:22;2122:18;2110:10;2107:34;2104:62;2101:88;;;2169:18;;:::i;:::-;2101:88;2209:10;2205:2;2198:22;1988:238;1945:281;;:::o;2232:129::-;2266:6;2293:20;;:::i;:::-;2283:30;;2322:33;2350:4;2342:6;2322:33;:::i;:::-;2232:129;;;:::o;2367:319::-;2452:4;2542:18;2534:6;2531:30;2528:56;;;2564:18;;:::i;:::-;2528:56;2614:4;2606:6;2602:17;2594:25;;2674:4;2668;2664:15;2656:23;;2367:319;;;:::o;2692:117::-;2801:1;2798;2791:12;2815:104;2860:7;2889:24;2907:5;2889:24;:::i;:::-;2878:35;;2815:104;;;:::o;2925:138::-;3006:32;3032:5;3006:32;:::i;:::-;2999:5;2996:43;2986:71;;3053:1;3050;3043:12;2986:71;2925:138;:::o;3069:155::-;3123:5;3161:6;3148:20;3139:29;;3177:41;3212:5;3177:41;:::i;:::-;3069:155;;;;:::o;3255:734::-;3359:5;3384:89;3400:72;3465:6;3400:72;:::i;:::-;3384:89;:::i;:::-;3375:98;;3493:5;3522:6;3515:5;3508:21;3556:4;3549:5;3545:16;3538:23;;3609:4;3601:6;3597:17;3589:6;3585:30;3638:3;3630:6;3627:15;3624:122;;;3657:79;;:::i;:::-;3624:122;3772:6;3755:228;3789:6;3784:3;3781:15;3755:228;;;3864:3;3893:45;3934:3;3922:10;3893:45;:::i;:::-;3888:3;3881:58;3968:4;3963:3;3959:14;3952:21;;3831:152;3815:4;3810:3;3806:14;3799:21;;3755:228;;;3759:21;3365:624;;3255:734;;;;;:::o;4020:386::-;4099:5;4148:3;4141:4;4133:6;4129:17;4125:27;4115:122;;4156:79;;:::i;:::-;4115:122;4273:6;4260:20;4298:102;4396:3;4388:6;4381:4;4373:6;4369:17;4298:102;:::i;:::-;4289:111;;4105:301;4020:386;;;;:::o;4412:311::-;4489:4;4579:18;4571:6;4568:30;4565:56;;;4601:18;;:::i;:::-;4565:56;4651:4;4643:6;4639:17;4631:25;;4711:4;4705;4701:15;4693:23;;4412:311;;;:::o;4729:77::-;4766:7;4795:5;4784:16;;4729:77;;;:::o;4812:122::-;4885:24;4903:5;4885:24;:::i;:::-;4878:5;4875:35;4865:63;;4924:1;4921;4914:12;4865:63;4812:122;:::o;4940:139::-;4986:5;5024:6;5011:20;5002:29;;5040:33;5067:5;5040:33;:::i;:::-;4940:139;;;;:::o;5102:710::-;5198:5;5223:81;5239:64;5296:6;5239:64;:::i;:::-;5223:81;:::i;:::-;5214:90;;5324:5;5353:6;5346:5;5339:21;5387:4;5380:5;5376:16;5369:23;;5440:4;5432:6;5428:17;5420:6;5416:30;5469:3;5461:6;5458:15;5455:122;;;5488:79;;:::i;:::-;5455:122;5603:6;5586:220;5620:6;5615:3;5612:15;5586:220;;;5695:3;5724:37;5757:3;5745:10;5724:37;:::i;:::-;5719:3;5712:50;5791:4;5786:3;5782:14;5775:21;;5662:144;5646:4;5641:3;5637:14;5630:21;;5586:220;;;5590:21;5204:608;;5102:710;;;;;:::o;5835:370::-;5906:5;5955:3;5948:4;5940:6;5936:17;5932:27;5922:122;;5963:79;;:::i;:::-;5922:122;6080:6;6067:20;6105:94;6195:3;6187:6;6180:4;6172:6;6168:17;6105:94;:::i;:::-;6096:103;;5912:293;5835:370;;;;:::o;6211:910::-;6337:6;6345;6394:2;6382:9;6373:7;6369:23;6365:32;6362:119;;;6400:79;;:::i;:::-;6362:119;6548:1;6537:9;6533:17;6520:31;6578:18;6570:6;6567:30;6564:117;;;6600:79;;:::i;:::-;6564:117;6705:86;6783:7;6774:6;6763:9;6759:22;6705:86;:::i;:::-;6695:96;;6491:310;6868:2;6857:9;6853:18;6840:32;6899:18;6891:6;6888:30;6885:117;;;6921:79;;:::i;:::-;6885:117;7026:78;7096:7;7087:6;7076:9;7072:22;7026:78;:::i;:::-;7016:88;;6811:303;6211:910;;;;;:::o;7127:169::-;7211:11;7245:6;7240:3;7233:19;7285:4;7280:3;7276:14;7261:29;;7127:169;;;;:::o;7302:::-;7442:21;7438:1;7430:6;7426:14;7419:45;7302:169;:::o;7477:366::-;7619:3;7640:67;7704:2;7699:3;7640:67;:::i;:::-;7633:74;;7716:93;7805:3;7716:93;:::i;:::-;7834:2;7829:3;7825:12;7818:19;;7477:366;;;:::o;7849:419::-;8015:4;8053:2;8042:9;8038:18;8030:26;;8102:9;8096:4;8092:20;8088:1;8077:9;8073:17;8066:47;8130:131;8256:4;8130:131;:::i;:::-;8122:139;;7849:419;;;:::o;8274:180::-;8322:77;8319:1;8312:88;8419:4;8416:1;8409:15;8443:4;8440:1;8433:15;8460:305;8500:3;8519:20;8537:1;8519:20;:::i;:::-;8514:25;;8553:20;8571:1;8553:20;:::i;:::-;8548:25;;8707:1;8639:66;8635:74;8632:1;8629:81;8626:107;;;8713:18;;:::i;:::-;8626:107;8757:1;8754;8750:9;8743:16;;8460:305;;;;:::o;8771:229::-;8911:34;8907:1;8899:6;8895:14;8888:58;8980:12;8975:2;8967:6;8963:15;8956:37;8771:229;:::o;9006:366::-;9148:3;9169:67;9233:2;9228:3;9169:67;:::i;:::-;9162:74;;9245:93;9334:3;9245:93;:::i;:::-;9363:2;9358:3;9354:12;9347:19;;9006:366;;;:::o;9378:419::-;9544:4;9582:2;9571:9;9567:18;9559:26;;9631:9;9625:4;9621:20;9617:1;9606:9;9602:17;9595:47;9659:131;9785:4;9659:131;:::i;:::-;9651:139;;9378:419;;;:::o;9803:224::-;9943:34;9939:1;9931:6;9927:14;9920:58;10012:7;10007:2;9999:6;9995:15;9988:32;9803:224;:::o;10033:366::-;10175:3;10196:67;10260:2;10255:3;10196:67;:::i;:::-;10189:74;;10272:93;10361:3;10272:93;:::i;:::-;10390:2;10385:3;10381:12;10374:19;;10033:366;;;:::o;10405:419::-;10571:4;10609:2;10598:9;10594:18;10586:26;;10658:9;10652:4;10648:20;10644:1;10633:9;10629:17;10622:47;10686:131;10812:4;10686:131;:::i;:::-;10678:139;;10405:419;;;:::o;10830:180::-;10878:77;10875:1;10868:88;10975:4;10972:1;10965:15;10999:4;10996:1;10989:15;11016:191;11056:4;11076:20;11094:1;11076:20;:::i;:::-;11071:25;;11110:20;11128:1;11110:20;:::i;:::-;11105:25;;11149:1;11146;11143:8;11140:34;;;11154:18;;:::i;:::-;11140:34;11199:1;11196;11192:9;11184:17;;11016:191;;;;:::o;11213:233::-;11252:3;11275:24;11293:5;11275:24;:::i;:::-;11266:33;;11321:66;11314:5;11311:77;11308:103;;11391:18;;:::i;:::-;11308:103;11438:1;11431:5;11427:13;11420:20;;11213:233;;;:::o;11452:348::-;11492:7;11515:20;11533:1;11515:20;:::i;:::-;11510:25;;11549:20;11567:1;11549:20;:::i;:::-;11544:25;;11737:1;11669:66;11665:74;11662:1;11659:81;11654:1;11647:9;11640:17;11636:105;11633:131;;;11744:18;;:::i;:::-;11633:131;11792:1;11789;11785:9;11774:20;;11452:348;;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "616600",
"executionCost": "50684",
"totalCost": "667284"
},
"external": {
"changeOwner(address)": "30589",
"charge()": "infinite",
"getOwner()": "2522",
"withdrawls(address[],uint256[])": "infinite"
},
"internal": {
"nodePayment(address payable,uint256)": "infinite",
"sum(uint256[] memory)": "infinite",
"userPayment(address payable,uint256)": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 68,
"end": 3986,
"name": "MSTORE",
"source": 0
},
{
"begin": 1102,
"end": 1112,
"name": "CALLER",
"source": 0
},
{
"begin": 1094,
"end": 1099,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1094,
"end": 1099,
"name": "DUP1",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1094,
"end": 1112,
"name": "EXP",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "DUP2",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "SLOAD",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "DUP2",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1094,
"end": 1112,
"name": "MUL",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "NOT",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "AND",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "SWAP1",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "DUP4",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1094,
"end": 1112,
"name": "AND",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "MUL",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "OR",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "SWAP1",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "SSTORE",
"source": 0
},
{
"begin": 1094,
"end": 1112,
"name": "POP",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1228,
"end": 1233,
"name": "DUP1",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "SLOAD",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "SWAP1",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1228,
"end": 1233,
"name": "EXP",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "SWAP1",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "DIV",
"source": 0
},
{
"begin": 1228,
"end": 1233,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1228,
"end": 1233,
"name": "AND",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1207,
"end": 1234,
"name": "AND",
"source": 0
},
{
"begin": 1224,
"end": 1225,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1207,
"end": 1234,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1207,
"end": 1234,
"name": "AND",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "PUSH",
"source": 0,
"value": "342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735"
},
{
"begin": 1207,
"end": 1234,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1207,
"end": 1234,
"name": "MLOAD",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1207,
"end": 1234,
"name": "MLOAD",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "DUP1",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "SWAP2",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "SUB",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "SWAP1",
"source": 0
},
{
"begin": 1207,
"end": 1234,
"name": "LOG3",
"source": 0
},
{
"begin": 1269,
"end": 1278,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 1255,
"end": 1266,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 1255,
"end": 1278,
"name": "DUP2",
"source": 0
},
{
"begin": 1255,
"end": 1278,
"name": "SWAP1",
"source": 0
},
{
"begin": 1255,
"end": 1278,
"name": "SSTORE",
"source": 0
},
{
"begin": 1255,
"end": 1278,
"name": "POP",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 68,
"end": 3986,
"name": "CODECOPY",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 68,
"end": 3986,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a264697066735822122017854f76ef0841a3b76f970a7e0ba51dd25e994ce305699b02c49de13309a02964736f6c634300080f0033",
".code": [
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 68,
"end": 3986,
"name": "MSTORE",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 68,
"end": 3986,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "LT",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPI",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 68,
"end": 3986,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 68,
"end": 3986,
"name": "SHR",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "55161913"
},
{
"begin": 68,
"end": 3986,
"name": "EQ",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPI",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "893D20E8"
},
{
"begin": 68,
"end": 3986,
"name": "EQ",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPI",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "A6F9DAE1"
},
{
"begin": 68,
"end": 3986,
"name": "EQ",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPI",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "C0722F37"
},
{
"begin": 68,
"end": 3986,
"name": "EQ",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPI",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 68,
"end": 3986,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 68,
"end": 3986,
"name": "DUP1",
"source": 0
},
{
"begin": 68,
"end": 3986,
"name": "REVERT",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 1831,
"end": 1974,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 1831,
"end": 1974,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 1831,
"end": 1974,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 1831,
"end": 1974,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"name": "STOP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "DUP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "ISZERO",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPI",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1667,
"end": 1750,
"name": "DUP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "REVERT",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "POP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 1667,
"end": 1750,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1667,
"end": 1750,
"name": "MLOAD",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 1667,
"end": 1750,
"name": "SWAP2",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "SWAP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 1667,
"end": 1750,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1667,
"end": 1750,
"name": "MLOAD",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "DUP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "SWAP2",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "SUB",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "SWAP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "RETURN",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "DUP1",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "ISZERO",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPI",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1438,
"end": 1569,
"name": "DUP1",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "REVERT",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "POP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 1438,
"end": 1569,
"name": "DUP1",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "SUB",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "DUP2",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "ADD",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "SWAP1",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 1438,
"end": 1569,
"name": "SWAP2",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "SWAP1",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 1438,
"end": 1569,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 1438,
"end": 1569,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "STOP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 2934,
"end": 3977,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 2934,
"end": 3977,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 2934,
"end": 3977,
"name": "DUP1",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "SUB",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "DUP2",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "ADD",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "SWAP1",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 2934,
"end": 3977,
"name": "SWAP2",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "SWAP1",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 2934,
"end": 3977,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 2934,
"end": 3977,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 2934,
"end": 3977,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 2934,
"end": 3977,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "STOP",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 1831,
"end": 1974,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 939,
"end": 944,
"name": "DUP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SLOAD",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SWAP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 939,
"end": 944,
"name": "EXP",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SWAP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "DIV",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 939,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 925,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 935,
"name": "CALLER",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 925,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "EQ",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 917,
"end": 968,
"name": "JUMPI",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 917,
"end": 968,
"name": "MLOAD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "8C379A000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 917,
"end": 968,
"name": "DUP2",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "MSTORE",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 917,
"end": 968,
"name": "ADD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 917,
"end": 968,
"name": "SWAP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 917,
"end": 968,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "tag",
"source": 0,
"value": "24"
},
{
"begin": 917,
"end": 968,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 917,
"end": 968,
"name": "MLOAD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "DUP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SWAP2",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SUB",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SWAP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "REVERT",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 917,
"end": 968,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1957,
"end": 1966,
"modifierDepth": 1,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 1942,
"end": 1953,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 1942,
"end": 1953,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "DUP3",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "DUP3",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SLOAD",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SWAP2",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 1942,
"end": 1966,
"jumpType": "[in]",
"modifierDepth": 1,
"name": "JUMP",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SWAP3",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "POP",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "POP",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "DUP2",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "SSTORE",
"source": 0
},
{
"begin": 1942,
"end": 1966,
"modifierDepth": 1,
"name": "POP",
"source": 0
},
{
"begin": 1831,
"end": 1974,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 1667,
"end": 1750,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1710,
"end": 1717,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1737,
"end": 1742,
"name": "DUP1",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1737,
"end": 1742,
"name": "SWAP1",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "SLOAD",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "SWAP1",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1737,
"end": 1742,
"name": "EXP",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "SWAP1",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "DIV",
"source": 0
},
{
"begin": 1737,
"end": 1742,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1737,
"end": 1742,
"name": "AND",
"source": 0
},
{
"begin": 1730,
"end": 1742,
"name": "SWAP1",
"source": 0
},
{
"begin": 1730,
"end": 1742,
"name": "POP",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"name": "SWAP1",
"source": 0
},
{
"begin": 1667,
"end": 1750,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 1438,
"end": 1569,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 939,
"end": 944,
"name": "DUP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SLOAD",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SWAP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 939,
"end": 944,
"name": "EXP",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "SWAP1",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "DIV",
"source": 0
},
{
"begin": 939,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 939,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 925,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 935,
"name": "CALLER",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 925,
"end": 944,
"name": "AND",
"source": 0
},
{
"begin": 925,
"end": 944,
"name": "EQ",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "31"
},
{
"begin": 917,
"end": 968,
"name": "JUMPI",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 917,
"end": 968,
"name": "MLOAD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "8C379A000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 917,
"end": 968,
"name": "DUP2",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "MSTORE",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 917,
"end": 968,
"name": "ADD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 917,
"end": 968,
"name": "SWAP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 917,
"end": 968,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "tag",
"source": 0,
"value": "32"
},
{
"begin": 917,
"end": 968,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 917,
"end": 968,
"name": "MLOAD",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "DUP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SWAP2",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SUB",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "SWAP1",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "REVERT",
"source": 0
},
{
"begin": 917,
"end": 968,
"name": "tag",
"source": 0,
"value": "31"
},
{
"begin": 917,
"end": 968,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 1524,
"end": 1532,
"modifierDepth": 1,
"name": "DUP1",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "AND",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1517,
"end": 1522,
"name": "DUP1",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "SLOAD",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "EXP",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "DIV",
"source": 0
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1517,
"end": 1522,
"modifierDepth": 1,
"name": "AND",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "AND",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "342827C97908E5E2F71151C08502A66D44B6F758E3AC2F1DE95F02EB95F0A735"
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "MLOAD",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "MLOAD",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "DUP1",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "SWAP2",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "SUB",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1508,
"end": 1533,
"modifierDepth": 1,
"name": "LOG3",
"source": 0
},
{
"begin": 1552,
"end": 1560,
"modifierDepth": 1,
"name": "DUP1",
"source": 0
},
{
"begin": 1544,
"end": 1549,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 1544,
"end": 1549,
"name": "DUP1",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "EXP",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "DUP2",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "SLOAD",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "DUP2",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "MUL",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "NOT",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "AND",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "DUP4",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "AND",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "MUL",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "OR",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "SWAP1",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "SSTORE",
"source": 0
},
{
"begin": 1544,
"end": 1560,
"modifierDepth": 1,
"name": "POP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"name": "POP",
"source": 0
},
{
"begin": 1438,
"end": 1569,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 2934,
"end": 3977,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3171,
"end": 3180,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 3156,
"end": 3167,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 3156,
"end": 3167,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 3156,
"end": 3180,
"name": "DUP3",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "DUP3",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "SLOAD",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "PUSH [tag]",
"source": 0,
"value": "35"
},
{
"begin": 3156,
"end": 3180,
"name": "SWAP2",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "SWAP1",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 3156,
"end": 3180,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "tag",
"source": 0,
"value": "35"
},
{
"begin": 3156,
"end": 3180,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "SWAP3",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "POP",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "POP",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "DUP2",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "SWAP1",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "SSTORE",
"source": 0
},
{
"begin": 3156,
"end": 3180,
"name": "POP",
"source": 0
},
{
"begin": 3288,
"end": 3293,
"name": "DUP1",
"source": 0
},
{
"begin": 3288,
"end": 3300,
"name": "MLOAD",
"source": 0
},
{
"begin": 3272,
"end": 3277,
"name": "DUP3",
"source": 0
},
{
"begin": 3272,
"end": 3284,
"name": "MLOAD",
"source": 0
},
{
"begin": 3272,
"end": 3300,
"name": "EQ",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH [tag]",
"source": 0,
"value": "36"
},
{
"begin": 3264,
"end": 3347,
"name": "JUMPI",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 3264,
"end": 3347,
"name": "MLOAD",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH",
"source": 0,
"value": "8C379A000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 3264,
"end": 3347,
"name": "DUP2",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "MSTORE",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 3264,
"end": 3347,
"name": "ADD",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH [tag]",
"source": 0,
"value": "37"
},
{
"begin": 3264,
"end": 3347,
"name": "SWAP1",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH [tag]",
"source": 0,
"value": "38"
},
{
"begin": 3264,
"end": 3347,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "tag",
"source": 0,
"value": "37"
},
{
"begin": 3264,
"end": 3347,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 3264,
"end": 3347,
"name": "MLOAD",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "DUP1",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "SWAP2",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "SUB",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "SWAP1",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "REVERT",
"source": 0
},
{
"begin": 3264,
"end": 3347,
"name": "tag",
"source": 0,
"value": "36"
},
{
"begin": 3264,
"end": 3347,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3467,
"end": 3481,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 3484,
"end": 3494,
"name": "PUSH [tag]",
"source": 0,
"value": "39"
},
{
"begin": 3488,
"end": 3493,
"name": "DUP3",
"source": 0
},
{
"begin": 3484,
"end": 3487,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 3484,
"end": 3494,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3484,
"end": 3494,
"name": "tag",
"source": 0,
"value": "39"
},
{
"begin": 3484,
"end": 3494,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3467,
"end": 3494,
"name": "SWAP1",
"source": 0
},
{
"begin": 3467,
"end": 3494,
"name": "POP",
"source": 0
},
{
"begin": 3538,
"end": 3547,
"name": "DUP1",
"source": 0
},
{
"begin": 3523,
"end": 3534,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 3523,
"end": 3534,
"name": "SLOAD",
"source": 0
},
{
"begin": 3523,
"end": 3547,
"name": "LT",
"source": 0
},
{
"begin": 3523,
"end": 3547,
"name": "ISZERO",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 3515,
"end": 3589,
"name": "JUMPI",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 3515,
"end": 3589,
"name": "MLOAD",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH",
"source": 0,
"value": "8C379A000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 3515,
"end": 3589,
"name": "DUP2",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "MSTORE",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 3515,
"end": 3589,
"name": "ADD",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH [tag]",
"source": 0,
"value": "42"
},
{
"begin": 3515,
"end": 3589,
"name": "SWAP1",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH [tag]",
"source": 0,
"value": "43"
},
{
"begin": 3515,
"end": 3589,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "tag",
"source": 0,
"value": "42"
},
{
"begin": 3515,
"end": 3589,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 3515,
"end": 3589,
"name": "MLOAD",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "DUP1",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "SWAP2",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "SUB",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "SWAP1",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "REVERT",
"source": 0
},
{
"begin": 3515,
"end": 3589,
"name": "tag",
"source": 0,
"value": "41"
},
{
"begin": 3515,
"end": 3589,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3625,
"end": 3631,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 3620,
"end": 3970,
"name": "tag",
"source": 0,
"value": "44"
},
{
"begin": 3620,
"end": 3970,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3639,
"end": 3644,
"name": "DUP4",
"source": 0
},
{
"begin": 3639,
"end": 3651,
"name": "MLOAD",
"source": 0
},
{
"begin": 3635,
"end": 3636,
"name": "DUP2",
"source": 0
},
{
"begin": 3635,
"end": 3651,
"name": "LT",
"source": 0
},
{
"begin": 3620,
"end": 3970,
"name": "ISZERO",
"source": 0
},
{
"begin": 3620,
"end": 3970,
"name": "PUSH [tag]",
"source": 0,
"value": "45"
},
{
"begin": 3620,
"end": 3970,
"name": "JUMPI",
"source": 0
},
{
"begin": 3831,
"end": 3836,
"name": "DUP3",
"source": 0
},
{
"begin": 3837,
"end": 3838,
"name": "DUP2",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "DUP2",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "MLOAD",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "DUP2",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "LT",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "PUSH [tag]",
"source": 0,
"value": "47"
},
{
"begin": 3831,
"end": 3839,
"name": "JUMPI",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "PUSH [tag]",
"source": 0,
"value": "48"
},
{
"begin": 3831,
"end": 3839,
"name": "PUSH [tag]",
"source": 0,
"value": "49"
},
{
"begin": 3831,
"end": 3839,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "tag",
"source": 0,
"value": "48"
},
{
"begin": 3831,
"end": 3839,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "tag",
"source": 0,
"value": "47"
},
{
"begin": 3831,
"end": 3839,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3831,
"end": 3839,
"name": "MUL",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3831,
"end": 3839,
"name": "ADD",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "ADD",
"source": 0
},
{
"begin": 3831,
"end": 3839,
"name": "MLOAD",
"source": 0
},
{
"begin": 3816,
"end": 3827,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 3816,
"end": 3827,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 3816,
"end": 3839,
"name": "DUP3",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "DUP3",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "SLOAD",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "PUSH [tag]",
"source": 0,
"value": "50"
},
{
"begin": 3816,
"end": 3839,
"name": "SWAP2",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "SWAP1",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "PUSH [tag]",
"source": 0,
"value": "51"
},
{
"begin": 3816,
"end": 3839,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "tag",
"source": 0,
"value": "50"
},
{
"begin": 3816,
"end": 3839,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "SWAP3",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "POP",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "POP",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "DUP2",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "SWAP1",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "SSTORE",
"source": 0
},
{
"begin": 3816,
"end": 3839,
"name": "POP",
"source": 0
},
{
"begin": 3927,
"end": 3958,
"name": "PUSH [tag]",
"source": 0,
"value": "52"
},
{
"begin": 3939,
"end": 3944,
"name": "DUP5",
"source": 0
},
{
"begin": 3945,
"end": 3946,
"name": "DUP3",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "DUP2",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "MLOAD",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "DUP2",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "LT",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "PUSH [tag]",
"source": 0,
"value": "53"
},
{
"begin": 3939,
"end": 3947,
"name": "JUMPI",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "PUSH [tag]",
"source": 0,
"value": "54"
},
{
"begin": 3939,
"end": 3947,
"name": "PUSH [tag]",
"source": 0,
"value": "49"
},
{
"begin": 3939,
"end": 3947,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "tag",
"source": 0,
"value": "54"
},
{
"begin": 3939,
"end": 3947,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "tag",
"source": 0,
"value": "53"
},
{
"begin": 3939,
"end": 3947,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3939,
"end": 3947,
"name": "MUL",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3939,
"end": 3947,
"name": "ADD",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "ADD",
"source": 0
},
{
"begin": 3939,
"end": 3947,
"name": "MLOAD",
"source": 0
},
{
"begin": 3949,
"end": 3954,
"name": "DUP5",
"source": 0
},
{
"begin": 3955,
"end": 3956,
"name": "DUP4",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "DUP2",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "MLOAD",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "DUP2",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "LT",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "PUSH [tag]",
"source": 0,
"value": "55"
},
{
"begin": 3949,
"end": 3957,
"name": "JUMPI",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "PUSH [tag]",
"source": 0,
"value": "56"
},
{
"begin": 3949,
"end": 3957,
"name": "PUSH [tag]",
"source": 0,
"value": "49"
},
{
"begin": 3949,
"end": 3957,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "tag",
"source": 0,
"value": "56"
},
{
"begin": 3949,
"end": 3957,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "tag",
"source": 0,
"value": "55"
},
{
"begin": 3949,
"end": 3957,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3949,
"end": 3957,
"name": "MUL",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 3949,
"end": 3957,
"name": "ADD",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "ADD",
"source": 0
},
{
"begin": 3949,
"end": 3957,
"name": "MLOAD",
"source": 0
},
{
"begin": 3927,
"end": 3938,
"name": "PUSH [tag]",
"source": 0,
"value": "57"
},
{
"begin": 3927,
"end": 3958,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3927,
"end": 3958,
"name": "tag",
"source": 0,
"value": "52"
},
{
"begin": 3927,
"end": 3958,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "DUP1",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "DUP1",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "PUSH [tag]",
"source": 0,
"value": "58"
},
{
"begin": 3653,
"end": 3656,
"name": "SWAP1",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "PUSH [tag]",
"source": 0,
"value": "59"
},
{
"begin": 3653,
"end": 3656,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "tag",
"source": 0,
"value": "58"
},
{
"begin": 3653,
"end": 3656,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "SWAP2",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "POP",
"source": 0
},
{
"begin": 3653,
"end": 3656,
"name": "POP",
"source": 0
},
{
"begin": 3620,
"end": 3970,
"name": "PUSH [tag]",
"source": 0,
"value": "44"
},
{
"begin": 3620,
"end": 3970,
"name": "JUMP",
"source": 0
},
{
"begin": 3620,
"end": 3970,
"name": "tag",
"source": 0,
"value": "45"
},
{
"begin": 3620,
"end": 3970,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 3620,
"end": 3970,
"name": "POP",
"source": 0
},
{
"begin": 3022,
"end": 3977,
"name": "POP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "POP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"name": "POP",
"source": 0
},
{
"begin": 2934,
"end": 3977,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 2058,
"end": 2379,
"name": "tag",
"source": 0,
"value": "40"
},
{
"begin": 2058,
"end": 2379,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2116,
"end": 2127,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2206,
"end": 2220,
"name": "DUP1",
"source": 0
},
{
"begin": 2223,
"end": 2224,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2206,
"end": 2224,
"name": "SWAP1",
"source": 0
},
{
"begin": 2206,
"end": 2224,
"name": "POP",
"source": 0
},
{
"begin": 2250,
"end": 2256,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2245,
"end": 2335,
"name": "tag",
"source": 0,
"value": "61"
},
{
"begin": 2245,
"end": 2335,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2264,
"end": 2271,
"name": "DUP4",
"source": 0
},
{
"begin": 2264,
"end": 2278,
"name": "MLOAD",
"source": 0
},
{
"begin": 2260,
"end": 2261,
"name": "DUP2",
"source": 0
},
{
"begin": 2260,
"end": 2278,
"name": "LT",
"source": 0
},
{
"begin": 2245,
"end": 2335,
"name": "ISZERO",
"source": 0
},
{
"begin": 2245,
"end": 2335,
"name": "PUSH [tag]",
"source": 0,
"value": "62"
},
{
"begin": 2245,
"end": 2335,
"name": "JUMPI",
"source": 0
},
{
"begin": 2313,
"end": 2320,
"name": "DUP4",
"source": 0
},
{
"begin": 2321,
"end": 2322,
"name": "DUP2",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "DUP2",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "MLOAD",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "DUP2",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "LT",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "PUSH [tag]",
"source": 0,
"value": "64"
},
{
"begin": 2313,
"end": 2323,
"name": "JUMPI",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "PUSH [tag]",
"source": 0,
"value": "65"
},
{
"begin": 2313,
"end": 2323,
"name": "PUSH [tag]",
"source": 0,
"value": "49"
},
{
"begin": 2313,
"end": 2323,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "tag",
"source": 0,
"value": "65"
},
{
"begin": 2313,
"end": 2323,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "tag",
"source": 0,
"value": "64"
},
{
"begin": 2313,
"end": 2323,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 2313,
"end": 2323,
"name": "MUL",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 2313,
"end": 2323,
"name": "ADD",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "ADD",
"source": 0
},
{
"begin": 2313,
"end": 2323,
"name": "MLOAD",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "DUP3",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "PUSH [tag]",
"source": 0,
"value": "66"
},
{
"begin": 2300,
"end": 2323,
"name": "SWAP2",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "SWAP1",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 2300,
"end": 2323,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "tag",
"source": 0,
"value": "66"
},
{
"begin": 2300,
"end": 2323,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "SWAP2",
"source": 0
},
{
"begin": 2300,
"end": 2323,
"name": "POP",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "DUP1",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "DUP1",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "PUSH [tag]",
"source": 0,
"value": "67"
},
{
"begin": 2280,
"end": 2283,
"name": "SWAP1",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "PUSH [tag]",
"source": 0,
"value": "59"
},
{
"begin": 2280,
"end": 2283,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "tag",
"source": 0,
"value": "67"
},
{
"begin": 2280,
"end": 2283,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "SWAP2",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "POP",
"source": 0
},
{
"begin": 2280,
"end": 2283,
"name": "POP",
"source": 0
},
{
"begin": 2245,
"end": 2335,
"name": "PUSH [tag]",
"source": 0,
"value": "61"
},
{
"begin": 2245,
"end": 2335,
"name": "JUMP",
"source": 0
},
{
"begin": 2245,
"end": 2335,
"name": "tag",
"source": 0,
"value": "62"
},
{
"begin": 2245,
"end": 2335,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2245,
"end": 2335,
"name": "POP",
"source": 0
},
{
"begin": 2362,
"end": 2371,
"name": "DUP1",
"source": 0
},
{
"begin": 2355,
"end": 2371,
"name": "SWAP2",
"source": 0
},
{
"begin": 2355,
"end": 2371,
"name": "POP",
"source": 0
},
{
"begin": 2355,
"end": 2371,
"name": "POP",
"source": 0
},
{
"begin": 2058,
"end": 2379,
"name": "SWAP2",
"source": 0
},
{
"begin": 2058,
"end": 2379,
"name": "SWAP1",
"source": 0
},
{
"begin": 2058,
"end": 2379,
"name": "POP",
"source": 0
},
{
"begin": 2058,
"end": 2379,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 2442,
"end": 2618,
"name": "tag",
"source": 0,
"value": "57"
},
{
"begin": 2442,
"end": 2618,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2545,
"end": 2564,
"name": "PUSH",
"source": 0,
"value": "DE0B6B3A7640000"
},
{
"begin": 2531,
"end": 2564,
"name": "DUP2",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "PUSH [tag]",
"source": 0,
"value": "69"
},
{
"begin": 2531,
"end": 2564,
"name": "SWAP2",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "SWAP1",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "PUSH [tag]",
"source": 0,
"value": "70"
},
{
"begin": 2531,
"end": 2564,
"jumpType": "[in]",
"name": "JUMP",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "tag",
"source": 0,
"value": "69"
},
{
"begin": 2531,
"end": 2564,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "SWAP1",
"source": 0
},
{
"begin": 2531,
"end": 2564,
"name": "POP",
"source": 0
},
{
"begin": 2575,
"end": 2587,
"name": "DUP2",
"source": 0
},
{
"begin": 2575,
"end": 2596,
"name": "PUSH",
"source": 0,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 2575,
"end": 2596,
"name": "AND",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "8FC"
},
{
"begin": 2597,
"end": 2609,
"name": "DUP3",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "SWAP1",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP2",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "ISZERO",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "MUL",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "SWAP1",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 2575,
"end": 2610,
"name": "MLOAD",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 2575,
"end": 2610,
"name": "MLOAD",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP1",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP4",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "SUB",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP2",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP6",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP9",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP9",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "CALL",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "SWAP4",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "POP",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "POP",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "POP",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "POP",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "ISZERO",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "DUP1",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "ISZERO",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH [tag]",
"source": 0,
"value": "72"
},
{
"begin": 2575,
"end": 2610,
"name": "JUMPI",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "RETURNDATASIZE",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2575,
"end": 2610,
"name": "DUP1",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "RETURNDATACOPY",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "RETURNDATASIZE",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 2575,
"end": 2610,
"name": "REVERT",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "tag",
"source": 0,
"value": "72"
},
{
"begin": 2575,
"end": 2610,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 2575,
"end": 2610,
"name": "POP",
"source": 0
},
{
"begin": 2442,
"end": 2618,
"name": "POP",
"source": 0
},
{
"begin": 2442,
"end": 2618,
"name": "POP",
"source": 0
},
{
"begin": 2442,
"end": 2618,
"jumpType": "[out]",
"name": "JUMP",
"source": 0
},
{
"begin": 7,
"end": 133,
"name": "tag",
"source": 1,
"value": "73"
},
{
"begin": 7,
"end": 133,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 44,
"end": 51,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 84,
"end": 126,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 77,
"end": 82,
"name": "DUP3",
"source": 1
},
{
"begin": 73,
"end": 127,
"name": "AND",
"source": 1
},
{
"begin": 62,
"end": 127,
"name": "SWAP1",
"source": 1
},
{
"begin": 62,
"end": 127,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 133,
"name": "SWAP2",
"source": 1
},
{
"begin": 7,
"end": 133,
"name": "SWAP1",
"source": 1
},
{
"begin": 7,
"end": 133,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 133,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 139,
"end": 235,
"name": "tag",
"source": 1,
"value": "74"
},
{
"begin": 139,
"end": 235,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 176,
"end": 183,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 205,
"end": 229,
"name": "PUSH [tag]",
"source": 1,
"value": "110"
},
{
"begin": 223,
"end": 228,
"name": "DUP3",
"source": 1
},
{
"begin": 205,
"end": 229,
"name": "PUSH [tag]",
"source": 1,
"value": "73"
},
{
"begin": 205,
"end": 229,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 205,
"end": 229,
"name": "tag",
"source": 1,
"value": "110"
},
{
"begin": 205,
"end": 229,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 194,
"end": 229,
"name": "SWAP1",
"source": 1
},
{
"begin": 194,
"end": 229,
"name": "POP",
"source": 1
},
{
"begin": 139,
"end": 235,
"name": "SWAP2",
"source": 1
},
{
"begin": 139,
"end": 235,
"name": "SWAP1",
"source": 1
},
{
"begin": 139,
"end": 235,
"name": "POP",
"source": 1
},
{
"begin": 139,
"end": 235,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 241,
"end": 359,
"name": "tag",
"source": 1,
"value": "75"
},
{
"begin": 241,
"end": 359,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 328,
"end": 352,
"name": "PUSH [tag]",
"source": 1,
"value": "112"
},
{
"begin": 346,
"end": 351,
"name": "DUP2",
"source": 1
},
{
"begin": 328,
"end": 352,
"name": "PUSH [tag]",
"source": 1,
"value": "74"
},
{
"begin": 328,
"end": 352,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 328,
"end": 352,
"name": "tag",
"source": 1,
"value": "112"
},
{
"begin": 328,
"end": 352,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 323,
"end": 326,
"name": "DUP3",
"source": 1
},
{
"begin": 316,
"end": 353,
"name": "MSTORE",
"source": 1
},
{
"begin": 241,
"end": 359,
"name": "POP",
"source": 1
},
{
"begin": 241,
"end": 359,
"name": "POP",
"source": 1
},
{
"begin": 241,
"end": 359,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 365,
"end": 587,
"name": "tag",
"source": 1,
"value": "12"
},
{
"begin": 365,
"end": 587,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 458,
"end": 462,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 496,
"end": 498,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 485,
"end": 494,
"name": "DUP3",
"source": 1
},
{
"begin": 481,
"end": 499,
"name": "ADD",
"source": 1
},
{
"begin": 473,
"end": 499,
"name": "SWAP1",
"source": 1
},
{
"begin": 473,
"end": 499,
"name": "POP",
"source": 1
},
{
"begin": 509,
"end": 580,
"name": "PUSH [tag]",
"source": 1,
"value": "114"
},
{
"begin": 577,
"end": 578,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 566,
"end": 575,
"name": "DUP4",
"source": 1
},
{
"begin": 562,
"end": 579,
"name": "ADD",
"source": 1
},
{
"begin": 553,
"end": 559,
"name": "DUP5",
"source": 1
},
{
"begin": 509,
"end": 580,
"name": "PUSH [tag]",
"source": 1,
"value": "75"
},
{
"begin": 509,
"end": 580,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 509,
"end": 580,
"name": "tag",
"source": 1,
"value": "114"
},
{
"begin": 509,
"end": 580,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 365,
"end": 587,
"name": "SWAP3",
"source": 1
},
{
"begin": 365,
"end": 587,
"name": "SWAP2",
"source": 1
},
{
"begin": 365,
"end": 587,
"name": "POP",
"source": 1
},
{
"begin": 365,
"end": 587,
"name": "POP",
"source": 1
},
{
"begin": 365,
"end": 587,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 593,
"end": 668,
"name": "tag",
"source": 1,
"value": "76"
},
{
"begin": 593,
"end": 668,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 626,
"end": 632,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 659,
"end": 661,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 653,
"end": 662,
"name": "MLOAD",
"source": 1
},
{
"begin": 643,
"end": 662,
"name": "SWAP1",
"source": 1
},
{
"begin": 643,
"end": 662,
"name": "POP",
"source": 1
},
{
"begin": 593,
"end": 668,
"name": "SWAP1",
"source": 1
},
{
"begin": 593,
"end": 668,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 674,
"end": 791,
"name": "tag",
"source": 1,
"value": "77"
},
{
"begin": 674,
"end": 791,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 783,
"end": 784,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 780,
"end": 781,
"name": "DUP1",
"source": 1
},
{
"begin": 773,
"end": 785,
"name": "REVERT",
"source": 1
},
{
"begin": 797,
"end": 914,
"name": "tag",
"source": 1,
"value": "78"
},
{
"begin": 797,
"end": 914,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 906,
"end": 907,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 903,
"end": 904,
"name": "DUP1",
"source": 1
},
{
"begin": 896,
"end": 908,
"name": "REVERT",
"source": 1
},
{
"begin": 920,
"end": 1042,
"name": "tag",
"source": 1,
"value": "79"
},
{
"begin": 920,
"end": 1042,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 993,
"end": 1017,
"name": "PUSH [tag]",
"source": 1,
"value": "119"
},
{
"begin": 1011,
"end": 1016,
"name": "DUP2",
"source": 1
},
{
"begin": 993,
"end": 1017,
"name": "PUSH [tag]",
"source": 1,
"value": "74"
},
{
"begin": 993,
"end": 1017,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 993,
"end": 1017,
"name": "tag",
"source": 1,
"value": "119"
},
{
"begin": 993,
"end": 1017,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 986,
"end": 991,
"name": "DUP2",
"source": 1
},
{
"begin": 983,
"end": 1018,
"name": "EQ",
"source": 1
},
{
"begin": 973,
"end": 1036,
"name": "PUSH [tag]",
"source": 1,
"value": "120"
},
{
"begin": 973,
"end": 1036,
"name": "JUMPI",
"source": 1
},
{
"begin": 1032,
"end": 1033,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1029,
"end": 1030,
"name": "DUP1",
"source": 1
},
{
"begin": 1022,
"end": 1034,
"name": "REVERT",
"source": 1
},
{
"begin": 973,
"end": 1036,
"name": "tag",
"source": 1,
"value": "120"
},
{
"begin": 973,
"end": 1036,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 920,
"end": 1042,
"name": "POP",
"source": 1
},
{
"begin": 920,
"end": 1042,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"name": "tag",
"source": 1,
"value": "80"
},
{
"begin": 1048,
"end": 1187,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1094,
"end": 1099,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1132,
"end": 1138,
"name": "DUP2",
"source": 1
},
{
"begin": 1119,
"end": 1139,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 1110,
"end": 1139,
"name": "SWAP1",
"source": 1
},
{
"begin": 1110,
"end": 1139,
"name": "POP",
"source": 1
},
{
"begin": 1148,
"end": 1181,
"name": "PUSH [tag]",
"source": 1,
"value": "122"
},
{
"begin": 1175,
"end": 1180,
"name": "DUP2",
"source": 1
},
{
"begin": 1148,
"end": 1181,
"name": "PUSH [tag]",
"source": 1,
"value": "79"
},
{
"begin": 1148,
"end": 1181,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1148,
"end": 1181,
"name": "tag",
"source": 1,
"value": "122"
},
{
"begin": 1148,
"end": 1181,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"name": "SWAP3",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"name": "SWAP2",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"name": "POP",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"name": "POP",
"source": 1
},
{
"begin": 1048,
"end": 1187,
"jumpType": "[out]",
"name": "JUMP",
"source": 1
},
{
"begin": 1193,
"end": 1522,
"name": "tag",
"source": 1,
"value": "16"
},
{
"begin": 1193,
"end": 1522,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1252,
"end": 1258,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1301,
"end": 1303,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1289,
"end": 1298,
"name": "DUP3",
"source": 1
},
{
"begin": 1280,
"end": 1287,
"name": "DUP5",
"source": 1
},
{
"begin": 1276,
"end": 1299,
"name": "SUB",
"source": 1
},
{
"begin": 1272,
"end": 1304,
"name": "SLT",
"source": 1
},
{
"begin": 1269,
"end": 1388,
"name": "ISZERO",
"source": 1
},
{
"begin": 1269,
"end": 1388,
"name": "PUSH [tag]",
"source": 1,
"value": "124"
},
{
"begin": 1269,
"end": 1388,
"name": "JUMPI",
"source": 1
},
{
"begin": 1307,
"end": 1386,
"name": "PUSH [tag]",
"source": 1,
"value": "125"
},
{
"begin": 1307,
"end": 1386,
"name": "PUSH [tag]",
"source": 1,
"value": "77"
},
{
"begin": 1307,
"end": 1386,
"jumpType": "[in]",
"name": "JUMP",
"source": 1
},
{
"begin": 1307,
"end": 1386,
"name": "tag",
"source": 1,
"value": "125"
},
{
"begin": 1307,
"end": 1386,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1269,
"end": 1388,
"name": "tag",
"source": 1,
"value": "124"
},
{
"begin": 1269,
"end": 1388,
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment