diff --git a/build/contracts/NftDistributor.json b/build/contracts/NftDistributor.json index 4226299..49b35c5 100644 --- a/build/contracts/NftDistributor.json +++ b/build/contracts/NftDistributor.json @@ -147,8 +147,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [], @@ -161,8 +160,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -181,8 +179,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -206,8 +203,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -226,8 +222,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -269,8 +264,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [], @@ -283,8 +277,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [], @@ -297,8 +290,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -317,8 +309,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -342,8 +333,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -398,8 +388,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -416,18 +405,13 @@ }, { "inputs": [ - { - "internalType": "address", - "name": "_user", - "type": "address" - }, { "internalType": "uint256", "name": "count", "type": "uint256" } ], - "name": "mintToUser", + "name": "mintNft", "outputs": [], "stateMutability": "nonpayable", "type": "function" @@ -467,8 +451,7 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" }, { "inputs": [ @@ -487,34 +470,33 @@ } ], "stateMutability": "view", - "type": "function", - "constant": true + "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_nftTarget\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_manageAddress\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"nft\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"nftSIds\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"nftTIds\",\"type\":\"uint256[]\"}],\"name\":\"Minted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"open\",\"type\":\"bool\"}],\"name\":\"OpenStatusChange\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MANAGE_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"_nftIds\",\"type\":\"uint256[]\"}],\"name\":\"addNFTData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getMintableCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getMintableNftIds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isOpen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"mintToUser\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nft\",\"outputs\":[{\"internalType\":\"contract IBEERC721\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"nftMinted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"ownerToNFTs\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_open\",\"type\":\"bool\"}],\"name\":\"updateOpenStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addNFTData(address,uint256[])\":{\"details\":\"The addNFTData function adds an array of NFT IDs to the list of NFT IDs owned by a user. mintToUser method would check if target user had permission to mint NFTs. Only functions called by an address with the MANAGE_ROLE permission can access this function. The function takes in the address of the user and an array of NFT IDs. It then loops through the array of NFT IDs, and adds each one to the end of the array of NFTs owned by that user to update their ownership data.\",\"params\":{\"_nftIds\":\"- An array of NFT IDs being added to the user's NFT data\",\"_user\":\"- The address of the user being updated with new NFT data\"}},\"constructor\":{\"details\":\"Contract constructor. Initializes the contract with the specified addresses and sets the admin and management roles. Parameters: - _nftTarget: The address of NFT that will be minted by this contract. Need MINTER_ROLE - _nftSource: The address of the source NFT that will check if user has mint permission. - _manageAddress: The address that will have the MANAGE_ROLE assigned.\"},\"getMintableCount(address)\":{\"details\":\"The getMintableCount function gets the number of NFTs owned by a user that have not yet been minted. This is a read-only function, meaning it doesn't modify the state of the blockchain. It takes in the address of the user whose mintable count is being determined, and returns the number of NFTs owned by the user that have not yet been minted.\",\"params\":{\"_user\":\"- The address of the user whose mintable count is being determined\"},\"returns\":{\"_0\":\"count - The number of NFTs owned by the user that have not yet been minted\"}},\"getMintableNftIds(address)\":{\"details\":\"The getMintableNftIds function gets an array of NFT IDs owned by a user that have not yet been minted. This is a read-only function, meaning it doesn't modify the state of the blockchain. It takes in the address of the user whose mintable NFT IDs are being determined, and returns an array of the NFT IDs owned by the user that have not yet been minted.\",\"params\":{\"_user\":\"- The address of the user whose mintable NFT IDs are being determined\"},\"returns\":{\"_0\":\"mintableNftIds - An array of the NFT IDs owned by the user that have not yet been minted\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"getRoleMember(bytes32,uint256)\":{\"details\":\"Returns one of the accounts that have `role`. `index` must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.\"},\"getRoleMemberCount(bytes32)\":{\"details\":\"Returns the number of accounts that have `role`. Can be used together with {getRoleMember} to enumerate all bearers of a role.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"mintToUser(address,uint256)\":{\"details\":\"The mintToUser function mints NFTs to a given user. Only functions called by an address with the MANAGE_ROLE permission can access this function. The function takes an array of nftIds and checks that there are enough mintable NFTs for the user. It then loops through the user's owned NFTs, checking if each is mintable, and if so, adds it to a list to be minted. Then it emits the Minted event with details of the operation.\",\"params\":{\"_user\":\"- The address of the user receiving the NFTs\"}},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/logic/NftDistributor.sol\":\"NftDistributor\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/AccessControl.sol\":{\"keccak256\":\"0x4a1a0ba12bf1a33f10d9fe226278cf59675c0b929d29e4da99658a079b27fb84\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bda1319db846d6d6f92d8a57a9bdee8bde1dc39aa7546165791692c24dd6f30a\",\"dweb:/ipfs/Qma5oZ7DmbdAjd8mpiW7mx896PDtwsQtCQ2hj9Upf7b7JK\"]},\"@openzeppelin/contracts/access/AccessControlEnumerable.sol\":{\"keccak256\":\"0x13f5e15f2a0650c0b6aaee2ef19e89eaf4870d6e79662d572a393334c1397247\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ee05f28f549a5d6515e152580716b87636ed4bfab9812499a6e3803df88288b\",\"dweb:/ipfs/QmeEnhdwY1t5Y3YU5a4ffzgXuToydH2PNdNxV9W7dEPRQJ\"]},\"@openzeppelin/contracts/access/IAccessControl.sol\":{\"keccak256\":\"0x59ce320a585d7e1f163cd70390a0ef2ff9cec832e2aa544293a00692465a7a57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb2c137c343ef0c4c7ce7b18c1d108afdc9d315a04e48307288d2d05adcbde3a\",\"dweb:/ipfs/QmUxhrAQM3MM3FF5j7AtcXLXguWCJBHJ14BRdVtuoQc8Fh\"]},\"@openzeppelin/contracts/access/IAccessControlEnumerable.sol\":{\"keccak256\":\"0xba4459ab871dfa300f5212c6c30178b63898c03533a1ede28436f11546626676\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3dcc7b09bfa6e18aab262ca372f4a9b1fc82e294b430706a4e1378cf58e6a276\",\"dweb:/ipfs/QmT8oSAcesdctR15HMLhr2a1HRpXymxdjTfdtfTYJcj2N2\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x516a22876c1fab47f49b1bc22b4614491cd05338af8bd2e7b382da090a079990\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a439187f7126d31add4557f82d8aed6be0162007cd7182c48fd934dbab8f3849\",\"dweb:/ipfs/QmRPLguRFvrRJS7r6F1bcLvsx6q1VrgjEpZafyeL8D7xZh\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x32c202bd28995dd20c4347b7c6467a6d3241c74c8ad3edcbb610cd9205916c45\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8179c356adb19e70d6b31a1eedc8c5c7f0c00e669e2540f4099e3844c6074d30\",\"dweb:/ipfs/QmWFbivarEobbqhS1go64ootVuHfVohBseerYy9FTEd1W2\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"@openzeppelin/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9772845c886f87a3aab315f8d6b68aa599027c20f441b131cd4afaf65b588900\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ad2f29a9c17a4f746416c9e254e17671f43c409dbfa6e4d7d76c3e4a83212d31\",\"dweb:/ipfs/QmTqU65L6iu6yqmXKzcNLPioR8etzKPWycpDJCm17ifVdS\"]},\"project:/contracts/interfaces/IBEERC721.sol\":{\"keccak256\":\"0x20027b750379b3699f109326d0e2d75794fd7af357dd7baceff59b7f26ccc4ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37b2a85036c0a234c5347794e832643b3db4550cc86f7062c111cd30de93d656\",\"dweb:/ipfs/QmPMszafR7MJER2PgUvktY8V3krBLT2u7zyB4PQCfBCdY5\"]},\"project:/contracts/logic/NftDistributor.sol\":{\"keccak256\":\"0x3a9c34957159049d533f04530dae2e84b5575d82a4455d589c9c0d7859d97073\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c6b4a5bf1ea0128c5ba2cf812afee86fe30fbfd62ae6f566a3ddddefc1cb232\",\"dweb:/ipfs/QmQPSixA53sNxCDXqjcmguFwerdgpPihViCmskrR5gZQtT\"]}},\"version\":1}", - "bytecode": "0x60806040526001600460146101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5060405162002cb438038062002cb483398181016040528101906200005291906200066b565b620000877fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb5570916000801b6200016560201b60201c565b620000ab6000801b6200009f620001c860201b60201c565b620001d060201b60201c565b60005b81518110156200011b57620001077fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091838381518110620000f357620000f2620006d1565b5b6020026020010151620001d060201b60201c565b80620001139062000739565b9050620000ae565b5081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000787565b60006200017883620001e660201b60201c565b905081600080858152602001908152602001600020600101819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b600033905090565b620001e282826200020560201b60201c565b5050565b6000806000838152602001908152602001600020600101549050919050565b6200021c82826200024d60201b62000ec61760201c565b6200024881600160008581526020019081526020016000206200033e60201b62000fa61790919060201c565b505050565b6200025f82826200037660201b60201c565b6200033a57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002df620001c860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006200036e836000018373ffffffffffffffffffffffffffffffffffffffff1660001b620003e060201b60201c565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000620003f483836200045a60201b60201c565b6200044f57826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905062000454565b600090505b92915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004be8262000491565b9050919050565b620004d081620004b1565b8114620004dc57600080fd5b50565b600081519050620004f081620004c5565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200054682620004fb565b810181811067ffffffffffffffff821117156200056857620005676200050c565b5b80604052505050565b60006200057d6200047d565b90506200058b82826200053b565b919050565b600067ffffffffffffffff821115620005ae57620005ad6200050c565b5b602082029050602081019050919050565b600080fd5b6000620005db620005d58462000590565b62000571565b90508083825260208201905060208402830185811115620006015762000600620005bf565b5b835b818110156200062e5780620006198882620004df565b84526020840193505060208101905062000603565b5050509392505050565b600082601f83011262000650576200064f620004f6565b5b815162000662848260208601620005c4565b91505092915050565b6000806040838503121562000685576200068462000487565b5b60006200069585828601620004df565b925050602083015167ffffffffffffffff811115620006b957620006b86200048c565b5b620006c78582860162000638565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b600062000746826200072f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156200077c576200077b62000700565b5b600182019050919050565b61251d80620007976000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806360a4b76a116100ad578063a217fddf11610071578063a217fddf1461032c578063ad0f93ad1461034a578063ca15c8731461037a578063d547741f146103aa578063ffd68f15146103c657610121565b806360a4b76a1461027657806384be00e4146102945780639010d07c146102b057806391d14854146102e05780639533a3841461031057610121565b806329bc78c6116100f457806329bc78c6146101e65780632f2ff15d1461020257806336568abe1461021e57806347535d7b1461023a57806347ccca021461025857610121565b806301ffc9a714610126578063032221ad146101565780630431f20514610186578063248a9ca3146101b6575b600080fd5b610140600480360381019061013b9190611792565b6103f6565b60405161014d91906117da565b60405180910390f35b610170600480360381019061016b9190611853565b610470565b60405161017d9190611948565b60405180910390f35b6101a0600480360381019061019b9190611853565b6105f2565b6040516101ad9190611979565b60405180910390f35b6101d060048036038101906101cb91906119ca565b610704565b6040516101dd9190611a06565b60405180910390f35b61020060048036038101906101fb9190611a4d565b610723565b005b61021c60048036038101906102179190611a7a565b6107f6565b005b61023860048036038101906102339190611a7a565b61081f565b005b6102426108a2565b60405161024f91906117da565b60405180910390f35b6102606108b5565b60405161026d9190611b19565b60405180910390f35b61027e6108db565b60405161028b9190611a06565b60405180910390f35b6102ae60048036038101906102a99190611b99565b6108ff565b005b6102ca60048036038101906102c59190611c25565b6109d6565b6040516102d79190611c74565b60405180910390f35b6102fa60048036038101906102f59190611a7a565b610a05565b60405161030791906117da565b60405180910390f35b61032a60048036038101906103259190611c8f565b610a6f565b005b610334610e21565b6040516103419190611a06565b60405180910390f35b610364600480360381019061035f9190611c8f565b610e28565b6040516103719190611979565b60405180910390f35b610394600480360381019061038f91906119ca565b610e59565b6040516103a19190611979565b60405180910390f35b6103c460048036038101906103bf9190611a7a565b610e7d565b005b6103e060048036038101906103db9190611ccf565b610ea6565b6040516103ed91906117da565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610469575061046882610fd6565b5b9050919050565b60606000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156104fd57602002820191906000526020600020905b8154815260200190600101908083116104e9575b505050505090506000815167ffffffffffffffff81111561052157610520611cfc565b5b60405190808252806020026020018201604052801561054f5781602001602082028036833780820191505090505b5090506000805b83518110156105e657600084828151811061057457610573611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166105d257808484815181106105b7576105b6611d2b565b5b60200260200101818152505082806105ce90611d89565b9350505b5080806105de90611d89565b915050610556565b50819350505050919050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561067e57602002820191906000526020600020905b81548152602001906001019080831161066a575b505050505090506000805b82518110156106f95760008382815181106106a7576106a6611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166106e55782806106e190611d89565b9350505b5080806106f190611d89565b915050610689565b508092505050919050565b6000806000838152602001908152602001600020600101549050919050565b6107547fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709161074f611050565b611058565b801515600460149054906101000a900460ff16151514156107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a190611e2f565b60405180910390fd5b80600460146101000a81548160ff0219169083151502179055508015157f1b6d93c5afd8d0a7da8d601d78cc3583962198954bfb14d0b47f26abc801f46560405160405180910390a250565b6107ff82610704565b6108108161080b611050565b611058565b61081a83836110f5565b505050565b610827611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088b90611ec1565b60405180910390fd5b61089e8282611129565b5050565b600460149054906101000a900460ff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709181565b6109307fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709161092b611050565b611058565b60005b828290508110156109d057600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208383838181106109905761098f611d2b565b5b90506020020135908060018154018082558091505060019003906000526020600020016000909190919091505580806109c890611d89565b915050610933565b50505050565b60006109fd826001600086815260200190815260200160002061115d90919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610aa07fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610a9b611050565b611058565b600460149054906101000a900460ff16610aef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae690611f2d565b60405180910390fd5b610af8826105f2565b811115610b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3190611f99565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610bc557602002820191906000526020600020905b815481526020019060010190808311610bb1575b505050505090506000808367ffffffffffffffff811115610be957610be8611cfc565b5b604051908082528060200260200182016040528015610c175781602001602082028036833780820191505090505b50905060005b8351811015610ce6576000848281518110610c3b57610c3a611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff16158015610c7257508584105b15610cd25780838581518110610c8b57610c8a611d2b565b5b60200260200101818152505060016003600083815260200190815260200160002060006101000a81548160ff0219169083151502179055508380610cce90611d89565b9450505b508080610cde90611d89565b915050610c1d565b506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343508b0587876040518363ffffffff1660e01b8152600401610d46929190611fb9565b6000604051808303816000875af1158015610d65573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d8e9190612117565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f044ffb6dcd4ec715d7d57b6c88fa43e63f1e156efb2a93d1072314f910286e9d8484604051610e11929190612160565b60405180910390a3505050505050565b6000801b81565b60026020528160005260406000208181548110610e4457600080fd5b90600052602060002001600091509150505481565b6000610e7660016000848152602001908152602001600020611177565b9050919050565b610e8682610704565b610e9781610e92611050565b611058565b610ea18383611129565b505050565b60036020528060005260406000206000915054906101000a900460ff1681565b610ed08282610a05565b610fa257600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f47611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000610fce836000018373ffffffffffffffffffffffffffffffffffffffff1660001b61118c565b905092915050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110495750611048826111fc565b5b9050919050565b600033905090565b6110628282610a05565b6110f1576110878173ffffffffffffffffffffffffffffffffffffffff166014611266565b6110958360001c6020611266565b6040516020016110a69291906122a9565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e8919061231c565b60405180910390fd5b5050565b6110ff8282610ec6565b6111248160016000858152602001908152602001600020610fa690919063ffffffff16565b505050565b61113382826114a2565b611158816001600085815260200190815260200160002061158390919063ffffffff16565b505050565b600061116c83600001836115b3565b60001c905092915050565b6000611185826000016115de565b9050919050565b600061119883836115ef565b6111f15782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506111f6565b600090505b92915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606060006002836002611279919061233e565b6112839190612398565b67ffffffffffffffff81111561129c5761129b611cfc565b5b6040519080825280601f01601f1916602001820160405280156112ce5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061130657611305611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061136a57611369611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026113aa919061233e565b6113b49190612398565b90505b6001811115611454577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106113f6576113f5611d2b565b5b1a60f81b82828151811061140d5761140c611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061144d906123ee565b90506113b7565b5060008414611498576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148f90612464565b60405180910390fd5b8091505092915050565b6114ac8282610a05565b1561157f57600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611524611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b60006115ab836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611612565b905092915050565b60008260000182815481106115cb576115ca611d2b565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b600080836001016000848152602001908152602001600020541415905092915050565b6000808360010160008481526020019081526020016000205490506000811461171a5760006001826116449190612484565b905060006001866000018054905061165c9190612484565b90508181146116cb57600086600001828154811061167d5761167c611d2b565b5b90600052602060002001549050808760000184815481106116a1576116a0611d2b565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b856000018054806116df576116de6124b8565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611720565b60009150505b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61176f8161173a565b811461177a57600080fd5b50565b60008135905061178c81611766565b92915050565b6000602082840312156117a8576117a7611730565b5b60006117b68482850161177d565b91505092915050565b60008115159050919050565b6117d4816117bf565b82525050565b60006020820190506117ef60008301846117cb565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611820826117f5565b9050919050565b61183081611815565b811461183b57600080fd5b50565b60008135905061184d81611827565b92915050565b60006020828403121561186957611868611730565b5b60006118778482850161183e565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000819050919050565b6118bf816118ac565b82525050565b60006118d183836118b6565b60208301905092915050565b6000602082019050919050565b60006118f582611880565b6118ff818561188b565b935061190a8361189c565b8060005b8381101561193b57815161192288826118c5565b975061192d836118dd565b92505060018101905061190e565b5085935050505092915050565b6000602082019050818103600083015261196281846118ea565b905092915050565b611973816118ac565b82525050565b600060208201905061198e600083018461196a565b92915050565b6000819050919050565b6119a781611994565b81146119b257600080fd5b50565b6000813590506119c48161199e565b92915050565b6000602082840312156119e0576119df611730565b5b60006119ee848285016119b5565b91505092915050565b611a0081611994565b82525050565b6000602082019050611a1b60008301846119f7565b92915050565b611a2a816117bf565b8114611a3557600080fd5b50565b600081359050611a4781611a21565b92915050565b600060208284031215611a6357611a62611730565b5b6000611a7184828501611a38565b91505092915050565b60008060408385031215611a9157611a90611730565b5b6000611a9f858286016119b5565b9250506020611ab08582860161183e565b9150509250929050565b6000819050919050565b6000611adf611ada611ad5846117f5565b611aba565b6117f5565b9050919050565b6000611af182611ac4565b9050919050565b6000611b0382611ae6565b9050919050565b611b1381611af8565b82525050565b6000602082019050611b2e6000830184611b0a565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611b5957611b58611b34565b5b8235905067ffffffffffffffff811115611b7657611b75611b39565b5b602083019150836020820283011115611b9257611b91611b3e565b5b9250929050565b600080600060408486031215611bb257611bb1611730565b5b6000611bc08682870161183e565b935050602084013567ffffffffffffffff811115611be157611be0611735565b5b611bed86828701611b43565b92509250509250925092565b611c02816118ac565b8114611c0d57600080fd5b50565b600081359050611c1f81611bf9565b92915050565b60008060408385031215611c3c57611c3b611730565b5b6000611c4a858286016119b5565b9250506020611c5b85828601611c10565b9150509250929050565b611c6e81611815565b82525050565b6000602082019050611c896000830184611c65565b92915050565b60008060408385031215611ca657611ca5611730565b5b6000611cb48582860161183e565b9250506020611cc585828601611c10565b9150509250929050565b600060208284031215611ce557611ce4611730565b5b6000611cf384828501611c10565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d94826118ac565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611dc757611dc6611d5a565b5b600182019050919050565b600082825260208201905092915050565b7f4f70656e207374617475732069732073616d6500000000000000000000000000600082015250565b6000611e19601383611dd2565b9150611e2482611de3565b602082019050919050565b60006020820190508181036000830152611e4881611e0c565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000611eab602f83611dd2565b9150611eb682611e4f565b604082019050919050565b60006020820190508181036000830152611eda81611e9e565b9050919050565b7f4e4654206469737472696275746f72206973206e6f74206f70656e0000000000600082015250565b6000611f17601b83611dd2565b9150611f2282611ee1565b602082019050919050565b60006020820190508181036000830152611f4681611f0a565b9050919050565b7f4d696e7461626c6520636f756e74206973206e6f7420656e6f75676800000000600082015250565b6000611f83601c83611dd2565b9150611f8e82611f4d565b602082019050919050565b60006020820190508181036000830152611fb281611f76565b9050919050565b6000604082019050611fce6000830185611c65565b611fdb602083018461196a565b9392505050565b6000601f19601f8301169050919050565b611ffc82611fe2565b810181811067ffffffffffffffff8211171561201b5761201a611cfc565b5b80604052505050565b600061202e611726565b905061203a8282611ff3565b919050565b600067ffffffffffffffff82111561205a57612059611cfc565b5b602082029050602081019050919050565b60008151905061207a81611bf9565b92915050565b600061209361208e8461203f565b612024565b905080838252602082019050602084028301858111156120b6576120b5611b3e565b5b835b818110156120df57806120cb888261206b565b8452602084019350506020810190506120b8565b5050509392505050565b600082601f8301126120fe576120fd611b34565b5b815161210e848260208601612080565b91505092915050565b60006020828403121561212d5761212c611730565b5b600082015167ffffffffffffffff81111561214b5761214a611735565b5b612157848285016120e9565b91505092915050565b6000604082019050818103600083015261217a81856118ea565b9050818103602083015261218e81846118ea565b90509392505050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006121d8601783612197565b91506121e3826121a2565b601782019050919050565b600081519050919050565b60005b838110156122175780820151818401526020810190506121fc565b83811115612226576000848401525b50505050565b6000612237826121ee565b6122418185612197565b93506122518185602086016121f9565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000612293601183612197565b915061229e8261225d565b601182019050919050565b60006122b4826121cb565b91506122c0828561222c565b91506122cb82612286565b91506122d7828461222c565b91508190509392505050565b60006122ee826121ee565b6122f88185611dd2565b93506123088185602086016121f9565b61231181611fe2565b840191505092915050565b6000602082019050818103600083015261233681846122e3565b905092915050565b6000612349826118ac565b9150612354836118ac565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561238d5761238c611d5a565b5b828202905092915050565b60006123a3826118ac565b91506123ae836118ac565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123e3576123e2611d5a565b5b828201905092915050565b60006123f9826118ac565b9150600082141561240d5761240c611d5a565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061244e602083611dd2565b915061245982612418565b602082019050919050565b6000602082019050818103600083015261247d81612441565b9050919050565b600061248f826118ac565b915061249a836118ac565b9250828210156124ad576124ac611d5a565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122039ec2aab4c4b5384b90fa10fc045ad4233a161ec1e44ffce8e37b95612ed121964736f6c634300080a0033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806360a4b76a116100ad578063a217fddf11610071578063a217fddf1461032c578063ad0f93ad1461034a578063ca15c8731461037a578063d547741f146103aa578063ffd68f15146103c657610121565b806360a4b76a1461027657806384be00e4146102945780639010d07c146102b057806391d14854146102e05780639533a3841461031057610121565b806329bc78c6116100f457806329bc78c6146101e65780632f2ff15d1461020257806336568abe1461021e57806347535d7b1461023a57806347ccca021461025857610121565b806301ffc9a714610126578063032221ad146101565780630431f20514610186578063248a9ca3146101b6575b600080fd5b610140600480360381019061013b9190611792565b6103f6565b60405161014d91906117da565b60405180910390f35b610170600480360381019061016b9190611853565b610470565b60405161017d9190611948565b60405180910390f35b6101a0600480360381019061019b9190611853565b6105f2565b6040516101ad9190611979565b60405180910390f35b6101d060048036038101906101cb91906119ca565b610704565b6040516101dd9190611a06565b60405180910390f35b61020060048036038101906101fb9190611a4d565b610723565b005b61021c60048036038101906102179190611a7a565b6107f6565b005b61023860048036038101906102339190611a7a565b61081f565b005b6102426108a2565b60405161024f91906117da565b60405180910390f35b6102606108b5565b60405161026d9190611b19565b60405180910390f35b61027e6108db565b60405161028b9190611a06565b60405180910390f35b6102ae60048036038101906102a99190611b99565b6108ff565b005b6102ca60048036038101906102c59190611c25565b6109d6565b6040516102d79190611c74565b60405180910390f35b6102fa60048036038101906102f59190611a7a565b610a05565b60405161030791906117da565b60405180910390f35b61032a60048036038101906103259190611c8f565b610a6f565b005b610334610e21565b6040516103419190611a06565b60405180910390f35b610364600480360381019061035f9190611c8f565b610e28565b6040516103719190611979565b60405180910390f35b610394600480360381019061038f91906119ca565b610e59565b6040516103a19190611979565b60405180910390f35b6103c460048036038101906103bf9190611a7a565b610e7d565b005b6103e060048036038101906103db9190611ccf565b610ea6565b6040516103ed91906117da565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610469575061046882610fd6565b5b9050919050565b60606000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156104fd57602002820191906000526020600020905b8154815260200190600101908083116104e9575b505050505090506000815167ffffffffffffffff81111561052157610520611cfc565b5b60405190808252806020026020018201604052801561054f5781602001602082028036833780820191505090505b5090506000805b83518110156105e657600084828151811061057457610573611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166105d257808484815181106105b7576105b6611d2b565b5b60200260200101818152505082806105ce90611d89565b9350505b5080806105de90611d89565b915050610556565b50819350505050919050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561067e57602002820191906000526020600020905b81548152602001906001019080831161066a575b505050505090506000805b82518110156106f95760008382815181106106a7576106a6611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166106e55782806106e190611d89565b9350505b5080806106f190611d89565b915050610689565b508092505050919050565b6000806000838152602001908152602001600020600101549050919050565b6107547fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709161074f611050565b611058565b801515600460149054906101000a900460ff16151514156107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a190611e2f565b60405180910390fd5b80600460146101000a81548160ff0219169083151502179055508015157f1b6d93c5afd8d0a7da8d601d78cc3583962198954bfb14d0b47f26abc801f46560405160405180910390a250565b6107ff82610704565b6108108161080b611050565b611058565b61081a83836110f5565b505050565b610827611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610894576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088b90611ec1565b60405180910390fd5b61089e8282611129565b5050565b600460149054906101000a900460ff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709181565b6109307fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709161092b611050565b611058565b60005b828290508110156109d057600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208383838181106109905761098f611d2b565b5b90506020020135908060018154018082558091505060019003906000526020600020016000909190919091505580806109c890611d89565b915050610933565b50505050565b60006109fd826001600086815260200190815260200160002061115d90919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b610aa07fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610a9b611050565b611058565b600460149054906101000a900460ff16610aef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae690611f2d565b60405180910390fd5b610af8826105f2565b811115610b3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3190611f99565b60405180910390fd5b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610bc557602002820191906000526020600020905b815481526020019060010190808311610bb1575b505050505090506000808367ffffffffffffffff811115610be957610be8611cfc565b5b604051908082528060200260200182016040528015610c175781602001602082028036833780820191505090505b50905060005b8351811015610ce6576000848281518110610c3b57610c3a611d2b565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff16158015610c7257508584105b15610cd25780838581518110610c8b57610c8a611d2b565b5b60200260200101818152505060016003600083815260200190815260200160002060006101000a81548160ff0219169083151502179055508380610cce90611d89565b9450505b508080610cde90611d89565b915050610c1d565b506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343508b0587876040518363ffffffff1660e01b8152600401610d46929190611fb9565b6000604051808303816000875af1158015610d65573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d8e9190612117565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f044ffb6dcd4ec715d7d57b6c88fa43e63f1e156efb2a93d1072314f910286e9d8484604051610e11929190612160565b60405180910390a3505050505050565b6000801b81565b60026020528160005260406000208181548110610e4457600080fd5b90600052602060002001600091509150505481565b6000610e7660016000848152602001908152602001600020611177565b9050919050565b610e8682610704565b610e9781610e92611050565b611058565b610ea18383611129565b505050565b60036020528060005260406000206000915054906101000a900460ff1681565b610ed08282610a05565b610fa257600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f47611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000610fce836000018373ffffffffffffffffffffffffffffffffffffffff1660001b61118c565b905092915050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110495750611048826111fc565b5b9050919050565b600033905090565b6110628282610a05565b6110f1576110878173ffffffffffffffffffffffffffffffffffffffff166014611266565b6110958360001c6020611266565b6040516020016110a69291906122a9565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e8919061231c565b60405180910390fd5b5050565b6110ff8282610ec6565b6111248160016000858152602001908152602001600020610fa690919063ffffffff16565b505050565b61113382826114a2565b611158816001600085815260200190815260200160002061158390919063ffffffff16565b505050565b600061116c83600001836115b3565b60001c905092915050565b6000611185826000016115de565b9050919050565b600061119883836115ef565b6111f15782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506111f6565b600090505b92915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b606060006002836002611279919061233e565b6112839190612398565b67ffffffffffffffff81111561129c5761129b611cfc565b5b6040519080825280601f01601f1916602001820160405280156112ce5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061130657611305611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061136a57611369611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600060018460026113aa919061233e565b6113b49190612398565b90505b6001811115611454577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106113f6576113f5611d2b565b5b1a60f81b82828151811061140d5761140c611d2b565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061144d906123ee565b90506113b7565b5060008414611498576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148f90612464565b60405180910390fd5b8091505092915050565b6114ac8282610a05565b1561157f57600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611524611050565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b60006115ab836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611612565b905092915050565b60008260000182815481106115cb576115ca611d2b565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b600080836001016000848152602001908152602001600020541415905092915050565b6000808360010160008481526020019081526020016000205490506000811461171a5760006001826116449190612484565b905060006001866000018054905061165c9190612484565b90508181146116cb57600086600001828154811061167d5761167c611d2b565b5b90600052602060002001549050808760000184815481106116a1576116a0611d2b565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b856000018054806116df576116de6124b8565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611720565b60009150505b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61176f8161173a565b811461177a57600080fd5b50565b60008135905061178c81611766565b92915050565b6000602082840312156117a8576117a7611730565b5b60006117b68482850161177d565b91505092915050565b60008115159050919050565b6117d4816117bf565b82525050565b60006020820190506117ef60008301846117cb565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611820826117f5565b9050919050565b61183081611815565b811461183b57600080fd5b50565b60008135905061184d81611827565b92915050565b60006020828403121561186957611868611730565b5b60006118778482850161183e565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000819050919050565b6118bf816118ac565b82525050565b60006118d183836118b6565b60208301905092915050565b6000602082019050919050565b60006118f582611880565b6118ff818561188b565b935061190a8361189c565b8060005b8381101561193b57815161192288826118c5565b975061192d836118dd565b92505060018101905061190e565b5085935050505092915050565b6000602082019050818103600083015261196281846118ea565b905092915050565b611973816118ac565b82525050565b600060208201905061198e600083018461196a565b92915050565b6000819050919050565b6119a781611994565b81146119b257600080fd5b50565b6000813590506119c48161199e565b92915050565b6000602082840312156119e0576119df611730565b5b60006119ee848285016119b5565b91505092915050565b611a0081611994565b82525050565b6000602082019050611a1b60008301846119f7565b92915050565b611a2a816117bf565b8114611a3557600080fd5b50565b600081359050611a4781611a21565b92915050565b600060208284031215611a6357611a62611730565b5b6000611a7184828501611a38565b91505092915050565b60008060408385031215611a9157611a90611730565b5b6000611a9f858286016119b5565b9250506020611ab08582860161183e565b9150509250929050565b6000819050919050565b6000611adf611ada611ad5846117f5565b611aba565b6117f5565b9050919050565b6000611af182611ac4565b9050919050565b6000611b0382611ae6565b9050919050565b611b1381611af8565b82525050565b6000602082019050611b2e6000830184611b0a565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611b5957611b58611b34565b5b8235905067ffffffffffffffff811115611b7657611b75611b39565b5b602083019150836020820283011115611b9257611b91611b3e565b5b9250929050565b600080600060408486031215611bb257611bb1611730565b5b6000611bc08682870161183e565b935050602084013567ffffffffffffffff811115611be157611be0611735565b5b611bed86828701611b43565b92509250509250925092565b611c02816118ac565b8114611c0d57600080fd5b50565b600081359050611c1f81611bf9565b92915050565b60008060408385031215611c3c57611c3b611730565b5b6000611c4a858286016119b5565b9250506020611c5b85828601611c10565b9150509250929050565b611c6e81611815565b82525050565b6000602082019050611c896000830184611c65565b92915050565b60008060408385031215611ca657611ca5611730565b5b6000611cb48582860161183e565b9250506020611cc585828601611c10565b9150509250929050565b600060208284031215611ce557611ce4611730565b5b6000611cf384828501611c10565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d94826118ac565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611dc757611dc6611d5a565b5b600182019050919050565b600082825260208201905092915050565b7f4f70656e207374617475732069732073616d6500000000000000000000000000600082015250565b6000611e19601383611dd2565b9150611e2482611de3565b602082019050919050565b60006020820190508181036000830152611e4881611e0c565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000611eab602f83611dd2565b9150611eb682611e4f565b604082019050919050565b60006020820190508181036000830152611eda81611e9e565b9050919050565b7f4e4654206469737472696275746f72206973206e6f74206f70656e0000000000600082015250565b6000611f17601b83611dd2565b9150611f2282611ee1565b602082019050919050565b60006020820190508181036000830152611f4681611f0a565b9050919050565b7f4d696e7461626c6520636f756e74206973206e6f7420656e6f75676800000000600082015250565b6000611f83601c83611dd2565b9150611f8e82611f4d565b602082019050919050565b60006020820190508181036000830152611fb281611f76565b9050919050565b6000604082019050611fce6000830185611c65565b611fdb602083018461196a565b9392505050565b6000601f19601f8301169050919050565b611ffc82611fe2565b810181811067ffffffffffffffff8211171561201b5761201a611cfc565b5b80604052505050565b600061202e611726565b905061203a8282611ff3565b919050565b600067ffffffffffffffff82111561205a57612059611cfc565b5b602082029050602081019050919050565b60008151905061207a81611bf9565b92915050565b600061209361208e8461203f565b612024565b905080838252602082019050602084028301858111156120b6576120b5611b3e565b5b835b818110156120df57806120cb888261206b565b8452602084019350506020810190506120b8565b5050509392505050565b600082601f8301126120fe576120fd611b34565b5b815161210e848260208601612080565b91505092915050565b60006020828403121561212d5761212c611730565b5b600082015167ffffffffffffffff81111561214b5761214a611735565b5b612157848285016120e9565b91505092915050565b6000604082019050818103600083015261217a81856118ea565b9050818103602083015261218e81846118ea565b90509392505050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006121d8601783612197565b91506121e3826121a2565b601782019050919050565b600081519050919050565b60005b838110156122175780820151818401526020810190506121fc565b83811115612226576000848401525b50505050565b6000612237826121ee565b6122418185612197565b93506122518185602086016121f9565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000612293601183612197565b915061229e8261225d565b601182019050919050565b60006122b4826121cb565b91506122c0828561222c565b91506122cb82612286565b91506122d7828461222c565b91508190509392505050565b60006122ee826121ee565b6122f88185611dd2565b93506123088185602086016121f9565b61231181611fe2565b840191505092915050565b6000602082019050818103600083015261233681846122e3565b905092915050565b6000612349826118ac565b9150612354836118ac565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561238d5761238c611d5a565b5b828202905092915050565b60006123a3826118ac565b91506123ae836118ac565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123e3576123e2611d5a565b5b828201905092915050565b60006123f9826118ac565b9150600082141561240d5761240c611d5a565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061244e602083611dd2565b915061245982612418565b602082019050919050565b6000602082019050818103600083015261247d81612441565b9050919050565b600061248f826118ac565b915061249a836118ac565b9250828210156124ad576124ac611d5a565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122039ec2aab4c4b5384b90fa10fc045ad4233a161ec1e44ffce8e37b95612ed121964736f6c634300080a0033", + "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_nftTarget\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_manageAddress\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"nft\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"nftSIds\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"nftTIds\",\"type\":\"uint256[]\"}],\"name\":\"Minted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"open\",\"type\":\"bool\"}],\"name\":\"OpenStatusChange\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MANAGE_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"_nftIds\",\"type\":\"uint256[]\"}],\"name\":\"addNFTData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getMintableCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getMintableNftIds\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"getRoleMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleMemberCount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isOpen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"mintNft\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nft\",\"outputs\":[{\"internalType\":\"contract IBEERC721\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"nftMinted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"ownerToNFTs\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_open\",\"type\":\"bool\"}],\"name\":\"updateOpenStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"addNFTData(address,uint256[])\":{\"details\":\"The addNFTData function adds an array of NFT IDs to the list of NFT IDs owned by a user. mintToUser method would check if target user had permission to mint NFTs. Only functions called by an address with the MANAGE_ROLE permission can access this function. The function takes in the address of the user and an array of NFT IDs. It then loops through the array of NFT IDs, and adds each one to the end of the array of NFTs owned by that user to update their ownership data.\",\"params\":{\"_nftIds\":\"- An array of NFT IDs being added to the user's NFT data\",\"_user\":\"- The address of the user being updated with new NFT data\"}},\"constructor\":{\"details\":\"Contract constructor. Initializes the contract with the specified addresses and sets the admin and management roles. Parameters: - _nftTarget: The address of NFT that will be minted by this contract. Need MINTER_ROLE - _nftSource: The address of the source NFT that will check if user has mint permission. - _manageAddress: The address that will have the MANAGE_ROLE assigned.\"},\"getMintableCount(address)\":{\"details\":\"The getMintableCount function gets the number of NFTs owned by a user that have not yet been minted. This is a read-only function, meaning it doesn't modify the state of the blockchain. It takes in the address of the user whose mintable count is being determined, and returns the number of NFTs owned by the user that have not yet been minted.\",\"params\":{\"_user\":\"- The address of the user whose mintable count is being determined\"},\"returns\":{\"_0\":\"count - The number of NFTs owned by the user that have not yet been minted\"}},\"getMintableNftIds(address)\":{\"details\":\"The getMintableNftIds function gets an array of NFT IDs owned by a user that have not yet been minted. This is a read-only function, meaning it doesn't modify the state of the blockchain. It takes in the address of the user whose mintable NFT IDs are being determined, and returns an array of the NFT IDs owned by the user that have not yet been minted.\",\"params\":{\"_user\":\"- The address of the user whose mintable NFT IDs are being determined\"},\"returns\":{\"_0\":\"mintableNftIds - An array of the NFT IDs owned by the user that have not yet been minted\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"getRoleMember(bytes32,uint256)\":{\"details\":\"Returns one of the accounts that have `role`. `index` must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.\"},\"getRoleMemberCount(bytes32)\":{\"details\":\"Returns the number of accounts that have `role`. Can be used together with {getRoleMember} to enumerate all bearers of a role.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/logic/NftDistributor.sol\":\"NftDistributor\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/access/AccessControl.sol\":{\"keccak256\":\"0x0dd6e52cb394d7f5abe5dca2d4908a6be40417914720932de757de34a99ab87f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dc117ce50ea746cab6b97ed1a1facee17a715ae0cb95d67b943dacbaf15176fb\",\"dweb:/ipfs/QmYRZ2UGNYwsHwfNu7Wjr8L2j1LBZ1mKv6NvbwgterYMXc\"]},\"@openzeppelin/contracts/access/AccessControlEnumerable.sol\":{\"keccak256\":\"0x13f5e15f2a0650c0b6aaee2ef19e89eaf4870d6e79662d572a393334c1397247\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ee05f28f549a5d6515e152580716b87636ed4bfab9812499a6e3803df88288b\",\"dweb:/ipfs/QmeEnhdwY1t5Y3YU5a4ffzgXuToydH2PNdNxV9W7dEPRQJ\"]},\"@openzeppelin/contracts/access/IAccessControl.sol\":{\"keccak256\":\"0x59ce320a585d7e1f163cd70390a0ef2ff9cec832e2aa544293a00692465a7a57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb2c137c343ef0c4c7ce7b18c1d108afdc9d315a04e48307288d2d05adcbde3a\",\"dweb:/ipfs/QmUxhrAQM3MM3FF5j7AtcXLXguWCJBHJ14BRdVtuoQc8Fh\"]},\"@openzeppelin/contracts/access/IAccessControlEnumerable.sol\":{\"keccak256\":\"0xba4459ab871dfa300f5212c6c30178b63898c03533a1ede28436f11546626676\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3dcc7b09bfa6e18aab262ca372f4a9b1fc82e294b430706a4e1378cf58e6a276\",\"dweb:/ipfs/QmT8oSAcesdctR15HMLhr2a1HRpXymxdjTfdtfTYJcj2N2\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"@openzeppelin/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"@openzeppelin/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"@openzeppelin/contracts/utils/structs/EnumerableSet.sol\":{\"keccak256\":\"0x9f4357008a8f7d8c8bf5d48902e789637538d8c016be5766610901b4bba81514\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://20bf19b2b851f58a4c24543de80ae70b3e08621f9230eb335dc75e2d4f43f5df\",\"dweb:/ipfs/QmSYuH1AhvJkPK8hNvoPqtExBcgTB42pPRHgTHkS5c5zYW\"]},\"project:/contracts/interfaces/IBEERC721.sol\":{\"keccak256\":\"0x20027b750379b3699f109326d0e2d75794fd7af357dd7baceff59b7f26ccc4ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://37b2a85036c0a234c5347794e832643b3db4550cc86f7062c111cd30de93d656\",\"dweb:/ipfs/QmPMszafR7MJER2PgUvktY8V3krBLT2u7zyB4PQCfBCdY5\"]},\"project:/contracts/logic/NftDistributor.sol\":{\"keccak256\":\"0x1ca338f0212ec00d6ac3d6e2f996a41b229b79984696259576c57381fa2c82ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34a1a74973c434264aa269c98757f130cccf3e54018c9732b212451f1aea638b\",\"dweb:/ipfs/QmVp2txw3id46hoZgZFAg19L26DD5HiQgaBcyCGGsnjvq4\"]}},\"version\":1}", + "bytecode": "0x60806040526000600460146101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5060405162002ca838038062002ca883398181016040528101906200005291906200066b565b620000877fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb5570916000801b6200016560201b60201c565b620000ab6000801b6200009f620001c860201b60201c565b620001d060201b60201c565b60005b81518110156200011b57620001077fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091838381518110620000f357620000f2620006d1565b5b6020026020010151620001d060201b60201c565b80620001139062000739565b9050620000ae565b5081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000787565b60006200017883620001e660201b60201c565b905081600080858152602001908152602001600020600101819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b600033905090565b620001e282826200020560201b60201c565b5050565b6000806000838152602001908152602001600020600101549050919050565b6200021c82826200024d60201b62000e911760201c565b6200024881600160008581526020019081526020016000206200033e60201b62000f711790919060201c565b505050565b6200025f82826200037660201b60201c565b6200033a57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002df620001c860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b60006200036e836000018373ffffffffffffffffffffffffffffffffffffffff1660001b620003e060201b60201c565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000620003f483836200045a60201b60201c565b6200044f57826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905062000454565b600090505b92915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004be8262000491565b9050919050565b620004d081620004b1565b8114620004dc57600080fd5b50565b600081519050620004f081620004c5565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200054682620004fb565b810181811067ffffffffffffffff821117156200056857620005676200050c565b5b80604052505050565b60006200057d6200047d565b90506200058b82826200053b565b919050565b600067ffffffffffffffff821115620005ae57620005ad6200050c565b5b602082029050602081019050919050565b600080fd5b6000620005db620005d58462000590565b62000571565b90508083825260208201905060208402830185811115620006015762000600620005bf565b5b835b818110156200062e5780620006198882620004df565b84526020840193505060208101905062000603565b5050509392505050565b600082601f83011262000650576200064f620004f6565b5b815162000662848260208601620005c4565b91505092915050565b6000806040838503121562000685576200068462000487565b5b60006200069585828601620004df565b925050602083015167ffffffffffffffff811115620006b957620006b86200048c565b5b620006c78582860162000638565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b600062000746826200072f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156200077c576200077b62000700565b5b600182019050919050565b61251180620007976000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806347ccca02116100ad578063a217fddf11610071578063a217fddf1461032c578063ad0f93ad1461034a578063ca15c8731461037a578063d547741f146103aa578063ffd68f15146103c657610121565b806347ccca021461027457806360a4b76a1461029257806384be00e4146102b05780639010d07c146102cc57806391d14854146102fc57610121565b8063248a9ca3116100f4578063248a9ca3146101d257806329bc78c6146102025780632f2ff15d1461021e57806336568abe1461023a57806347535d7b1461025657610121565b806301ffc9a714610126578063032221ad146101565780630431f205146101865780630d730acc146101b6575b600080fd5b610140600480360381019061013b9190611786565b6103f6565b60405161014d91906117ce565b60405180910390f35b610170600480360381019061016b9190611847565b610470565b60405161017d919061193c565b60405180910390f35b6101a0600480360381019061019b9190611847565b6105f2565b6040516101ad919061196d565b60405180910390f35b6101d060048036038101906101cb91906119b4565b610704565b005b6101ec60048036038101906101e79190611a17565b610a91565b6040516101f99190611a53565b60405180910390f35b61021c60048036038101906102179190611a9a565b610ab0565b005b61023860048036038101906102339190611ac7565b610b83565b005b610254600480360381019061024f9190611ac7565b610ba4565b005b61025e610c27565b60405161026b91906117ce565b60405180910390f35b61027c610c3a565b6040516102899190611b66565b60405180910390f35b61029a610c60565b6040516102a79190611a53565b60405180910390f35b6102ca60048036038101906102c59190611be6565b610c84565b005b6102e660048036038101906102e19190611c46565b610d5b565b6040516102f39190611c95565b60405180910390f35b61031660048036038101906103119190611ac7565b610d8a565b60405161032391906117ce565b60405180910390f35b610334610df4565b6040516103419190611a53565b60405180910390f35b610364600480360381019061035f9190611cb0565b610dfb565b604051610371919061196d565b60405180910390f35b610394600480360381019061038f9190611a17565b610e2c565b6040516103a1919061196d565b60405180910390f35b6103c460048036038101906103bf9190611ac7565b610e50565b005b6103e060048036038101906103db91906119b4565b610e71565b6040516103ed91906117ce565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610469575061046882610fa1565b5b9050919050565b60606000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156104fd57602002820191906000526020600020905b8154815260200190600101908083116104e9575b505050505090506000815167ffffffffffffffff81111561052157610520611cf0565b5b60405190808252806020026020018201604052801561054f5781602001602082028036833780820191505090505b5090506000805b83518110156105e657600084828151811061057457610573611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166105d257808484815181106105b7576105b6611d1f565b5b60200260200101818152505082806105ce90611d7d565b9350505b5080806105de90611d7d565b915050610556565b50819350505050919050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561067e57602002820191906000526020600020905b81548152602001906001019080831161066a575b505050505090506000805b82518110156106f95760008382815181106106a7576106a6611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166106e55782806106e190611d7d565b9350505b5080806106f190611d7d565b915050610689565b508092505050919050565b600460149054906101000a900460ff16610753576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074a90611e23565b60405180910390fd5b600061075d61101b565b9050610768816105f2565b8211156107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a190611e8f565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561083557602002820191906000526020600020905b815481526020019060010190808311610821575b505050505090506000808467ffffffffffffffff81111561085957610858611cf0565b5b6040519080825280602002602001820160405280156108875781602001602082028036833780820191505090505b50905060005b83518110156109565760008482815181106108ab576108aa611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff161580156108e257508684105b1561094257808385815181106108fb576108fa611d1f565b5b60200260200101818152505060016003600083815260200190815260200160002060006101000a81548160ff021916908315150217905550838061093e90611d7d565b9450505b50808061094e90611d7d565b91505061088d565b506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343508b0586886040518363ffffffff1660e01b81526004016109b6929190611eaf565b6000604051808303816000875af11580156109d5573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906109fe919061200d565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f044ffb6dcd4ec715d7d57b6c88fa43e63f1e156efb2a93d1072314f910286e9d8484604051610a81929190612056565b60405180910390a3505050505050565b6000806000838152602001908152602001600020600101549050919050565b610ae17fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610adc61101b565b611023565b801515600460149054906101000a900460ff1615151415610b37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2e906120d9565b60405180910390fd5b80600460146101000a81548160ff0219169083151502179055508015157f1b6d93c5afd8d0a7da8d601d78cc3583962198954bfb14d0b47f26abc801f46560405160405180910390a250565b610b8c82610a91565b610b95816110a8565b610b9f83836110bc565b505050565b610bac61101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c109061216b565b60405180910390fd5b610c2382826110f0565b5050565b600460149054906101000a900460ff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709181565b610cb57fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610cb061101b565b611023565b60005b82829050811015610d5557600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838383818110610d1557610d14611d1f565b5b9050602002013590806001815401808255809150506001900390600052602060002001600090919091909150558080610d4d90611d7d565b915050610cb8565b50505050565b6000610d82826001600086815260200190815260200160002061112490919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b81565b60026020528160005260406000208181548110610e1757600080fd5b90600052602060002001600091509150505481565b6000610e496001600084815260200190815260200160002061113e565b9050919050565b610e5982610a91565b610e62816110a8565b610e6c83836110f0565b505050565b60036020528060005260406000206000915054906101000a900460ff1681565b610e9b8282610d8a565b610f6d57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f1261101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000610f99836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611153565b905092915050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110145750611013826111c3565b5b9050919050565b600033905090565b61102d8282610d8a565b6110a45761103a8161122d565b6110488360001c602061125a565b60405160200161105992919061229d565b6040516020818303038152906040526040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109b9190612310565b60405180910390fd5b5050565b6110b9816110b461101b565b611023565b50565b6110c68282610e91565b6110eb8160016000858152602001908152602001600020610f7190919063ffffffff16565b505050565b6110fa8282611496565b61111f816001600085815260200190815260200160002061157790919063ffffffff16565b505050565b600061113383600001836115a7565b60001c905092915050565b600061114c826000016115d2565b9050919050565b600061115f83836115e3565b6111b85782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506111bd565b600090505b92915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60606112538273ffffffffffffffffffffffffffffffffffffffff16601460ff1661125a565b9050919050565b60606000600283600261126d9190612332565b611277919061238c565b67ffffffffffffffff8111156112905761128f611cf0565b5b6040519080825280601f01601f1916602001820160405280156112c25781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106112fa576112f9611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061135e5761135d611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261139e9190612332565b6113a8919061238c565b90505b6001811115611448577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106113ea576113e9611d1f565b5b1a60f81b82828151811061140157611400611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080611441906123e2565b90506113ab565b506000841461148c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148390612458565b60405180910390fd5b8091505092915050565b6114a08282610d8a565b1561157357600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061151861101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600061159f836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611606565b905092915050565b60008260000182815481106115bf576115be611d1f565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b600080836001016000848152602001908152602001600020541415905092915050565b6000808360010160008481526020019081526020016000205490506000811461170e5760006001826116389190612478565b90506000600186600001805490506116509190612478565b90508181146116bf57600086600001828154811061167157611670611d1f565b5b906000526020600020015490508087600001848154811061169557611694611d1f565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b856000018054806116d3576116d26124ac565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611714565b60009150505b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6117638161172e565b811461176e57600080fd5b50565b6000813590506117808161175a565b92915050565b60006020828403121561179c5761179b611724565b5b60006117aa84828501611771565b91505092915050565b60008115159050919050565b6117c8816117b3565b82525050565b60006020820190506117e360008301846117bf565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611814826117e9565b9050919050565b61182481611809565b811461182f57600080fd5b50565b6000813590506118418161181b565b92915050565b60006020828403121561185d5761185c611724565b5b600061186b84828501611832565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000819050919050565b6118b3816118a0565b82525050565b60006118c583836118aa565b60208301905092915050565b6000602082019050919050565b60006118e982611874565b6118f3818561187f565b93506118fe83611890565b8060005b8381101561192f57815161191688826118b9565b9750611921836118d1565b925050600181019050611902565b5085935050505092915050565b6000602082019050818103600083015261195681846118de565b905092915050565b611967816118a0565b82525050565b6000602082019050611982600083018461195e565b92915050565b611991816118a0565b811461199c57600080fd5b50565b6000813590506119ae81611988565b92915050565b6000602082840312156119ca576119c9611724565b5b60006119d88482850161199f565b91505092915050565b6000819050919050565b6119f4816119e1565b81146119ff57600080fd5b50565b600081359050611a11816119eb565b92915050565b600060208284031215611a2d57611a2c611724565b5b6000611a3b84828501611a02565b91505092915050565b611a4d816119e1565b82525050565b6000602082019050611a686000830184611a44565b92915050565b611a77816117b3565b8114611a8257600080fd5b50565b600081359050611a9481611a6e565b92915050565b600060208284031215611ab057611aaf611724565b5b6000611abe84828501611a85565b91505092915050565b60008060408385031215611ade57611add611724565b5b6000611aec85828601611a02565b9250506020611afd85828601611832565b9150509250929050565b6000819050919050565b6000611b2c611b27611b22846117e9565b611b07565b6117e9565b9050919050565b6000611b3e82611b11565b9050919050565b6000611b5082611b33565b9050919050565b611b6081611b45565b82525050565b6000602082019050611b7b6000830184611b57565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611ba657611ba5611b81565b5b8235905067ffffffffffffffff811115611bc357611bc2611b86565b5b602083019150836020820283011115611bdf57611bde611b8b565b5b9250929050565b600080600060408486031215611bff57611bfe611724565b5b6000611c0d86828701611832565b935050602084013567ffffffffffffffff811115611c2e57611c2d611729565b5b611c3a86828701611b90565b92509250509250925092565b60008060408385031215611c5d57611c5c611724565b5b6000611c6b85828601611a02565b9250506020611c7c8582860161199f565b9150509250929050565b611c8f81611809565b82525050565b6000602082019050611caa6000830184611c86565b92915050565b60008060408385031215611cc757611cc6611724565b5b6000611cd585828601611832565b9250506020611ce68582860161199f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d88826118a0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611dbb57611dba611d4e565b5b600182019050919050565b600082825260208201905092915050565b7f4e4654206469737472696275746f72206973206e6f74206f70656e0000000000600082015250565b6000611e0d601b83611dc6565b9150611e1882611dd7565b602082019050919050565b60006020820190508181036000830152611e3c81611e00565b9050919050565b7f4d696e7461626c6520636f756e74206973206e6f7420656e6f75676800000000600082015250565b6000611e79601c83611dc6565b9150611e8482611e43565b602082019050919050565b60006020820190508181036000830152611ea881611e6c565b9050919050565b6000604082019050611ec46000830185611c86565b611ed1602083018461195e565b9392505050565b6000601f19601f8301169050919050565b611ef282611ed8565b810181811067ffffffffffffffff82111715611f1157611f10611cf0565b5b80604052505050565b6000611f2461171a565b9050611f308282611ee9565b919050565b600067ffffffffffffffff821115611f5057611f4f611cf0565b5b602082029050602081019050919050565b600081519050611f7081611988565b92915050565b6000611f89611f8484611f35565b611f1a565b90508083825260208201905060208402830185811115611fac57611fab611b8b565b5b835b81811015611fd55780611fc18882611f61565b845260208401935050602081019050611fae565b5050509392505050565b600082601f830112611ff457611ff3611b81565b5b8151612004848260208601611f76565b91505092915050565b60006020828403121561202357612022611724565b5b600082015167ffffffffffffffff81111561204157612040611729565b5b61204d84828501611fdf565b91505092915050565b6000604082019050818103600083015261207081856118de565b9050818103602083015261208481846118de565b90509392505050565b7f4f70656e207374617475732069732073616d6500000000000000000000000000600082015250565b60006120c3601383611dc6565b91506120ce8261208d565b602082019050919050565b600060208201905081810360008301526120f2816120b6565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612155602f83611dc6565b9150612160826120f9565b604082019050919050565b6000602082019050818103600083015261218481612148565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006121cc60178361218b565b91506121d782612196565b601782019050919050565b600081519050919050565b60005b8381101561220b5780820151818401526020810190506121f0565b8381111561221a576000848401525b50505050565b600061222b826121e2565b612235818561218b565b93506122458185602086016121ed565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b600061228760118361218b565b915061229282612251565b601182019050919050565b60006122a8826121bf565b91506122b48285612220565b91506122bf8261227a565b91506122cb8284612220565b91508190509392505050565b60006122e2826121e2565b6122ec8185611dc6565b93506122fc8185602086016121ed565b61230581611ed8565b840191505092915050565b6000602082019050818103600083015261232a81846122d7565b905092915050565b600061233d826118a0565b9150612348836118a0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561238157612380611d4e565b5b828202905092915050565b6000612397826118a0565b91506123a2836118a0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123d7576123d6611d4e565b5b828201905092915050565b60006123ed826118a0565b9150600082141561240157612400611d4e565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000612442602083611dc6565b915061244d8261240c565b602082019050919050565b6000602082019050818103600083015261247181612435565b9050919050565b6000612483826118a0565b915061248e836118a0565b9250828210156124a1576124a0611d4e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212202b05cb3e18e2cc0836e611121077ea19cca9b9982ddc284e2bfbdb62b24ef6f764736f6c634300080a0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806347ccca02116100ad578063a217fddf11610071578063a217fddf1461032c578063ad0f93ad1461034a578063ca15c8731461037a578063d547741f146103aa578063ffd68f15146103c657610121565b806347ccca021461027457806360a4b76a1461029257806384be00e4146102b05780639010d07c146102cc57806391d14854146102fc57610121565b8063248a9ca3116100f4578063248a9ca3146101d257806329bc78c6146102025780632f2ff15d1461021e57806336568abe1461023a57806347535d7b1461025657610121565b806301ffc9a714610126578063032221ad146101565780630431f205146101865780630d730acc146101b6575b600080fd5b610140600480360381019061013b9190611786565b6103f6565b60405161014d91906117ce565b60405180910390f35b610170600480360381019061016b9190611847565b610470565b60405161017d919061193c565b60405180910390f35b6101a0600480360381019061019b9190611847565b6105f2565b6040516101ad919061196d565b60405180910390f35b6101d060048036038101906101cb91906119b4565b610704565b005b6101ec60048036038101906101e79190611a17565b610a91565b6040516101f99190611a53565b60405180910390f35b61021c60048036038101906102179190611a9a565b610ab0565b005b61023860048036038101906102339190611ac7565b610b83565b005b610254600480360381019061024f9190611ac7565b610ba4565b005b61025e610c27565b60405161026b91906117ce565b60405180910390f35b61027c610c3a565b6040516102899190611b66565b60405180910390f35b61029a610c60565b6040516102a79190611a53565b60405180910390f35b6102ca60048036038101906102c59190611be6565b610c84565b005b6102e660048036038101906102e19190611c46565b610d5b565b6040516102f39190611c95565b60405180910390f35b61031660048036038101906103119190611ac7565b610d8a565b60405161032391906117ce565b60405180910390f35b610334610df4565b6040516103419190611a53565b60405180910390f35b610364600480360381019061035f9190611cb0565b610dfb565b604051610371919061196d565b60405180910390f35b610394600480360381019061038f9190611a17565b610e2c565b6040516103a1919061196d565b60405180910390f35b6103c460048036038101906103bf9190611ac7565b610e50565b005b6103e060048036038101906103db91906119b4565b610e71565b6040516103ed91906117ce565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610469575061046882610fa1565b5b9050919050565b60606000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054806020026020016040519081016040528092919081815260200182805480156104fd57602002820191906000526020600020905b8154815260200190600101908083116104e9575b505050505090506000815167ffffffffffffffff81111561052157610520611cf0565b5b60405190808252806020026020018201604052801561054f5781602001602082028036833780820191505090505b5090506000805b83518110156105e657600084828151811061057457610573611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166105d257808484815181106105b7576105b6611d1f565b5b60200260200101818152505082806105ce90611d7d565b9350505b5080806105de90611d7d565b915050610556565b50819350505050919050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561067e57602002820191906000526020600020905b81548152602001906001019080831161066a575b505050505090506000805b82518110156106f95760008382815181106106a7576106a6611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff166106e55782806106e190611d7d565b9350505b5080806106f190611d7d565b915050610689565b508092505050919050565b600460149054906101000a900460ff16610753576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074a90611e23565b60405180910390fd5b600061075d61101b565b9050610768816105f2565b8211156107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a190611e8f565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561083557602002820191906000526020600020905b815481526020019060010190808311610821575b505050505090506000808467ffffffffffffffff81111561085957610858611cf0565b5b6040519080825280602002602001820160405280156108875781602001602082028036833780820191505090505b50905060005b83518110156109565760008482815181106108ab576108aa611d1f565b5b602002602001015190506003600082815260200190815260200160002060009054906101000a900460ff161580156108e257508684105b1561094257808385815181106108fb576108fa611d1f565b5b60200260200101818152505060016003600083815260200190815260200160002060006101000a81548160ff021916908315150217905550838061093e90611d7d565b9450505b50808061094e90611d7d565b91505061088d565b506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166343508b0586886040518363ffffffff1660e01b81526004016109b6929190611eaf565b6000604051808303816000875af11580156109d5573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906109fe919061200d565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f044ffb6dcd4ec715d7d57b6c88fa43e63f1e156efb2a93d1072314f910286e9d8484604051610a81929190612056565b60405180910390a3505050505050565b6000806000838152602001908152602001600020600101549050919050565b610ae17fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610adc61101b565b611023565b801515600460149054906101000a900460ff1615151415610b37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2e906120d9565b60405180910390fd5b80600460146101000a81548160ff0219169083151502179055508015157f1b6d93c5afd8d0a7da8d601d78cc3583962198954bfb14d0b47f26abc801f46560405160405180910390a250565b610b8c82610a91565b610b95816110a8565b610b9f83836110bc565b505050565b610bac61101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c109061216b565b60405180910390fd5b610c2382826110f0565b5050565b600460149054906101000a900460ff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb55709181565b610cb57fa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091610cb061101b565b611023565b60005b82829050811015610d5557600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020838383818110610d1557610d14611d1f565b5b9050602002013590806001815401808255809150506001900390600052602060002001600090919091909150558080610d4d90611d7d565b915050610cb8565b50505050565b6000610d82826001600086815260200190815260200160002061112490919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000801b81565b60026020528160005260406000208181548110610e1757600080fd5b90600052602060002001600091509150505481565b6000610e496001600084815260200190815260200160002061113e565b9050919050565b610e5982610a91565b610e62816110a8565b610e6c83836110f0565b505050565b60036020528060005260406000206000915054906101000a900460ff1681565b610e9b8282610d8a565b610f6d57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550610f1261101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000610f99836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611153565b905092915050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806110145750611013826111c3565b5b9050919050565b600033905090565b61102d8282610d8a565b6110a45761103a8161122d565b6110488360001c602061125a565b60405160200161105992919061229d565b6040516020818303038152906040526040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109b9190612310565b60405180910390fd5b5050565b6110b9816110b461101b565b611023565b50565b6110c68282610e91565b6110eb8160016000858152602001908152602001600020610f7190919063ffffffff16565b505050565b6110fa8282611496565b61111f816001600085815260200190815260200160002061157790919063ffffffff16565b505050565b600061113383600001836115a7565b60001c905092915050565b600061114c826000016115d2565b9050919050565b600061115f83836115e3565b6111b85782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506111bd565b600090505b92915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60606112538273ffffffffffffffffffffffffffffffffffffffff16601460ff1661125a565b9050919050565b60606000600283600261126d9190612332565b611277919061238c565b67ffffffffffffffff8111156112905761128f611cf0565b5b6040519080825280601f01601f1916602001820160405280156112c25781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106112fa576112f9611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061135e5761135d611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261139e9190612332565b6113a8919061238c565b90505b6001811115611448577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106113ea576113e9611d1f565b5b1a60f81b82828151811061140157611400611d1f565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080611441906123e2565b90506113ab565b506000841461148c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148390612458565b60405180910390fd5b8091505092915050565b6114a08282610d8a565b1561157357600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061151861101b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600061159f836000018373ffffffffffffffffffffffffffffffffffffffff1660001b611606565b905092915050565b60008260000182815481106115bf576115be611d1f565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b600080836001016000848152602001908152602001600020541415905092915050565b6000808360010160008481526020019081526020016000205490506000811461170e5760006001826116389190612478565b90506000600186600001805490506116509190612478565b90508181146116bf57600086600001828154811061167157611670611d1f565b5b906000526020600020015490508087600001848154811061169557611694611d1f565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b856000018054806116d3576116d26124ac565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611714565b60009150505b92915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6117638161172e565b811461176e57600080fd5b50565b6000813590506117808161175a565b92915050565b60006020828403121561179c5761179b611724565b5b60006117aa84828501611771565b91505092915050565b60008115159050919050565b6117c8816117b3565b82525050565b60006020820190506117e360008301846117bf565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611814826117e9565b9050919050565b61182481611809565b811461182f57600080fd5b50565b6000813590506118418161181b565b92915050565b60006020828403121561185d5761185c611724565b5b600061186b84828501611832565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000819050919050565b6118b3816118a0565b82525050565b60006118c583836118aa565b60208301905092915050565b6000602082019050919050565b60006118e982611874565b6118f3818561187f565b93506118fe83611890565b8060005b8381101561192f57815161191688826118b9565b9750611921836118d1565b925050600181019050611902565b5085935050505092915050565b6000602082019050818103600083015261195681846118de565b905092915050565b611967816118a0565b82525050565b6000602082019050611982600083018461195e565b92915050565b611991816118a0565b811461199c57600080fd5b50565b6000813590506119ae81611988565b92915050565b6000602082840312156119ca576119c9611724565b5b60006119d88482850161199f565b91505092915050565b6000819050919050565b6119f4816119e1565b81146119ff57600080fd5b50565b600081359050611a11816119eb565b92915050565b600060208284031215611a2d57611a2c611724565b5b6000611a3b84828501611a02565b91505092915050565b611a4d816119e1565b82525050565b6000602082019050611a686000830184611a44565b92915050565b611a77816117b3565b8114611a8257600080fd5b50565b600081359050611a9481611a6e565b92915050565b600060208284031215611ab057611aaf611724565b5b6000611abe84828501611a85565b91505092915050565b60008060408385031215611ade57611add611724565b5b6000611aec85828601611a02565b9250506020611afd85828601611832565b9150509250929050565b6000819050919050565b6000611b2c611b27611b22846117e9565b611b07565b6117e9565b9050919050565b6000611b3e82611b11565b9050919050565b6000611b5082611b33565b9050919050565b611b6081611b45565b82525050565b6000602082019050611b7b6000830184611b57565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112611ba657611ba5611b81565b5b8235905067ffffffffffffffff811115611bc357611bc2611b86565b5b602083019150836020820283011115611bdf57611bde611b8b565b5b9250929050565b600080600060408486031215611bff57611bfe611724565b5b6000611c0d86828701611832565b935050602084013567ffffffffffffffff811115611c2e57611c2d611729565b5b611c3a86828701611b90565b92509250509250925092565b60008060408385031215611c5d57611c5c611724565b5b6000611c6b85828601611a02565b9250506020611c7c8582860161199f565b9150509250929050565b611c8f81611809565b82525050565b6000602082019050611caa6000830184611c86565b92915050565b60008060408385031215611cc757611cc6611724565b5b6000611cd585828601611832565b9250506020611ce68582860161199f565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d88826118a0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611dbb57611dba611d4e565b5b600182019050919050565b600082825260208201905092915050565b7f4e4654206469737472696275746f72206973206e6f74206f70656e0000000000600082015250565b6000611e0d601b83611dc6565b9150611e1882611dd7565b602082019050919050565b60006020820190508181036000830152611e3c81611e00565b9050919050565b7f4d696e7461626c6520636f756e74206973206e6f7420656e6f75676800000000600082015250565b6000611e79601c83611dc6565b9150611e8482611e43565b602082019050919050565b60006020820190508181036000830152611ea881611e6c565b9050919050565b6000604082019050611ec46000830185611c86565b611ed1602083018461195e565b9392505050565b6000601f19601f8301169050919050565b611ef282611ed8565b810181811067ffffffffffffffff82111715611f1157611f10611cf0565b5b80604052505050565b6000611f2461171a565b9050611f308282611ee9565b919050565b600067ffffffffffffffff821115611f5057611f4f611cf0565b5b602082029050602081019050919050565b600081519050611f7081611988565b92915050565b6000611f89611f8484611f35565b611f1a565b90508083825260208201905060208402830185811115611fac57611fab611b8b565b5b835b81811015611fd55780611fc18882611f61565b845260208401935050602081019050611fae565b5050509392505050565b600082601f830112611ff457611ff3611b81565b5b8151612004848260208601611f76565b91505092915050565b60006020828403121561202357612022611724565b5b600082015167ffffffffffffffff81111561204157612040611729565b5b61204d84828501611fdf565b91505092915050565b6000604082019050818103600083015261207081856118de565b9050818103602083015261208481846118de565b90509392505050565b7f4f70656e207374617475732069732073616d6500000000000000000000000000600082015250565b60006120c3601383611dc6565b91506120ce8261208d565b602082019050919050565b600060208201905081810360008301526120f2816120b6565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612155602f83611dc6565b9150612160826120f9565b604082019050919050565b6000602082019050818103600083015261218481612148565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006121cc60178361218b565b91506121d782612196565b601782019050919050565b600081519050919050565b60005b8381101561220b5780820151818401526020810190506121f0565b8381111561221a576000848401525b50505050565b600061222b826121e2565b612235818561218b565b93506122458185602086016121ed565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b600061228760118361218b565b915061229282612251565b601182019050919050565b60006122a8826121bf565b91506122b48285612220565b91506122bf8261227a565b91506122cb8284612220565b91508190509392505050565b60006122e2826121e2565b6122ec8185611dc6565b93506122fc8185602086016121ed565b61230581611ed8565b840191505092915050565b6000602082019050818103600083015261232a81846122d7565b905092915050565b600061233d826118a0565b9150612348836118a0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561238157612380611d4e565b5b828202905092915050565b6000612397826118a0565b91506123a2836118a0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123d7576123d6611d4e565b5b828201905092915050565b60006123ed826118a0565b9150600082141561240157612400611d4e565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000612442602083611dc6565b915061244d8261240c565b602082019050919050565b6000602082019050818103600083015261247181612435565b9050919050565b6000612483826118a0565b915061248e836118a0565b9250828210156124a1576124a0611d4e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212202b05cb3e18e2cc0836e611121077ea19cca9b9982ddc284e2bfbdb62b24ef6f764736f6c634300080a0033", "immutableReferences": {}, "generatedSources": [ { "ast": { "nodeType": "YulBlock", - "src": "0:4694:12", + "src": "0:4694:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "47:35:12", + "src": "47:35:14", "statements": [ { "nodeType": "YulAssignment", - "src": "57:19:12", + "src": "57:19:14", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "73:2:12", + "src": "73:2:14", "type": "", "value": "64" } @@ -522,16 +504,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "67:5:12" + "src": "67:5:14" }, "nodeType": "YulFunctionCall", - "src": "67:9:12" + "src": "67:9:14" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "57:6:12" + "src": "57:6:14" } ] } @@ -543,16 +525,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40:6:12", + "src": "40:6:14", "type": "" } ], - "src": "7:75:12" + "src": "7:75:14" }, { "body": { "nodeType": "YulBlock", - "src": "177:28:12", + "src": "177:28:14", "statements": [ { "expression": { @@ -560,14 +542,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "194:1:12", + "src": "194:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "197:1:12", + "src": "197:1:14", "type": "", "value": "0" } @@ -575,24 +557,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "187:6:12" + "src": "187:6:14" }, "nodeType": "YulFunctionCall", - "src": "187:12:12" + "src": "187:12:14" }, "nodeType": "YulExpressionStatement", - "src": "187:12:12" + "src": "187:12:14" } ] }, "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulFunctionDefinition", - "src": "88:117:12" + "src": "88:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "300:28:12", + "src": "300:28:14", "statements": [ { "expression": { @@ -600,14 +582,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "317:1:12", + "src": "317:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "320:1:12", + "src": "320:1:14", "type": "", "value": "0" } @@ -615,39 +597,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "310:6:12" + "src": "310:6:14" }, "nodeType": "YulFunctionCall", - "src": "310:12:12" + "src": "310:12:14" }, "nodeType": "YulExpressionStatement", - "src": "310:12:12" + "src": "310:12:14" } ] }, "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulFunctionDefinition", - "src": "211:117:12" + "src": "211:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "379:81:12", + "src": "379:81:14", "statements": [ { "nodeType": "YulAssignment", - "src": "389:65:12", + "src": "389:65:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "404:5:12" + "src": "404:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "411:42:12", + "src": "411:42:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -655,16 +637,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "400:3:12" + "src": "400:3:14" }, "nodeType": "YulFunctionCall", - "src": "400:54:12" + "src": "400:54:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "389:7:12" + "src": "389:7:14" } ] } @@ -676,7 +658,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "361:5:12", + "src": "361:5:14", "type": "" } ], @@ -684,41 +666,41 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "371:7:12", + "src": "371:7:14", "type": "" } ], - "src": "334:126:12" + "src": "334:126:14" }, { "body": { "nodeType": "YulBlock", - "src": "511:51:12", + "src": "511:51:14", "statements": [ { "nodeType": "YulAssignment", - "src": "521:35:12", + "src": "521:35:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "550:5:12" + "src": "550:5:14" } ], "functionName": { "name": "cleanup_t_uint160", "nodeType": "YulIdentifier", - "src": "532:17:12" + "src": "532:17:14" }, "nodeType": "YulFunctionCall", - "src": "532:24:12" + "src": "532:24:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "521:7:12" + "src": "521:7:14" } ] } @@ -730,7 +712,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "493:5:12", + "src": "493:5:14", "type": "" } ], @@ -738,21 +720,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "503:7:12", + "src": "503:7:14", "type": "" } ], - "src": "466:96:12" + "src": "466:96:14" }, { "body": { "nodeType": "YulBlock", - "src": "611:79:12", + "src": "611:79:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "668:16:12", + "src": "668:16:14", "statements": [ { "expression": { @@ -760,14 +742,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "677:1:12", + "src": "677:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "680:1:12", + "src": "680:1:14", "type": "", "value": "0" } @@ -775,13 +757,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "670:6:12" + "src": "670:6:14" }, "nodeType": "YulFunctionCall", - "src": "670:12:12" + "src": "670:12:14" }, "nodeType": "YulExpressionStatement", - "src": "670:12:12" + "src": "670:12:14" } ] }, @@ -792,44 +774,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "634:5:12" + "src": "634:5:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "659:5:12" + "src": "659:5:14" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "641:17:12" + "src": "641:17:14" }, "nodeType": "YulFunctionCall", - "src": "641:24:12" + "src": "641:24:14" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "631:2:12" + "src": "631:2:14" }, "nodeType": "YulFunctionCall", - "src": "631:35:12" + "src": "631:35:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "624:6:12" + "src": "624:6:14" }, "nodeType": "YulFunctionCall", - "src": "624:43:12" + "src": "624:43:14" }, "nodeType": "YulIf", - "src": "621:63:12" + "src": "621:63:14" } ] }, @@ -839,41 +821,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "604:5:12", + "src": "604:5:14", "type": "" } ], - "src": "568:122:12" + "src": "568:122:14" }, { "body": { "nodeType": "YulBlock", - "src": "759:80:12", + "src": "759:80:14", "statements": [ { "nodeType": "YulAssignment", - "src": "769:22:12", + "src": "769:22:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "784:6:12" + "src": "784:6:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "778:5:12" + "src": "778:5:14" }, "nodeType": "YulFunctionCall", - "src": "778:13:12" + "src": "778:13:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "769:5:12" + "src": "769:5:14" } ] }, @@ -883,19 +865,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "827:5:12" + "src": "827:5:14" } ], "functionName": { "name": "validator_revert_t_address", "nodeType": "YulIdentifier", - "src": "800:26:12" + "src": "800:26:14" }, "nodeType": "YulFunctionCall", - "src": "800:33:12" + "src": "800:33:14" }, "nodeType": "YulExpressionStatement", - "src": "800:33:12" + "src": "800:33:14" } ] }, @@ -905,13 +887,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "737:6:12", + "src": "737:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "745:3:12", + "src": "745:3:14", "type": "" } ], @@ -919,16 +901,16 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "753:5:12", + "src": "753:5:14", "type": "" } ], - "src": "696:143:12" + "src": "696:143:14" }, { "body": { "nodeType": "YulBlock", - "src": "934:28:12", + "src": "934:28:14", "statements": [ { "expression": { @@ -936,14 +918,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "951:1:12", + "src": "951:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "954:1:12", + "src": "954:1:14", "type": "", "value": "0" } @@ -951,28 +933,28 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "944:6:12" + "src": "944:6:14" }, "nodeType": "YulFunctionCall", - "src": "944:12:12" + "src": "944:12:14" }, "nodeType": "YulExpressionStatement", - "src": "944:12:12" + "src": "944:12:14" } ] }, "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulFunctionDefinition", - "src": "845:117:12" + "src": "845:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "1016:54:12", + "src": "1016:54:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1026:38:12", + "src": "1026:38:14", "value": { "arguments": [ { @@ -980,12 +962,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "1044:5:12" + "src": "1044:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1051:2:12", + "src": "1051:2:14", "type": "", "value": "31" } @@ -993,17 +975,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1040:3:12" + "src": "1040:3:14" }, "nodeType": "YulFunctionCall", - "src": "1040:14:12" + "src": "1040:14:14" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "1060:2:12", + "src": "1060:2:14", "type": "", "value": "31" } @@ -1011,25 +993,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "1056:3:12" + "src": "1056:3:14" }, "nodeType": "YulFunctionCall", - "src": "1056:7:12" + "src": "1056:7:14" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "1036:3:12" + "src": "1036:3:14" }, "nodeType": "YulFunctionCall", - "src": "1036:28:12" + "src": "1036:28:14" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "1026:6:12" + "src": "1026:6:14" } ] } @@ -1041,7 +1023,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "999:5:12", + "src": "999:5:14", "type": "" } ], @@ -1049,16 +1031,16 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "1009:6:12", + "src": "1009:6:14", "type": "" } ], - "src": "968:102:12" + "src": "968:102:14" }, { "body": { "nodeType": "YulBlock", - "src": "1104:152:12", + "src": "1104:152:14", "statements": [ { "expression": { @@ -1066,14 +1048,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1121:1:12", + "src": "1121:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1124:77:12", + "src": "1124:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -1081,13 +1063,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1114:6:12" + "src": "1114:6:14" }, "nodeType": "YulFunctionCall", - "src": "1114:88:12" + "src": "1114:88:14" }, "nodeType": "YulExpressionStatement", - "src": "1114:88:12" + "src": "1114:88:14" }, { "expression": { @@ -1095,14 +1077,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1218:1:12", + "src": "1218:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1221:4:12", + "src": "1221:4:14", "type": "", "value": "0x41" } @@ -1110,13 +1092,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1211:6:12" + "src": "1211:6:14" }, "nodeType": "YulFunctionCall", - "src": "1211:15:12" + "src": "1211:15:14" }, "nodeType": "YulExpressionStatement", - "src": "1211:15:12" + "src": "1211:15:14" }, { "expression": { @@ -1124,14 +1106,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1242:1:12", + "src": "1242:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1245:4:12", + "src": "1245:4:14", "type": "", "value": "0x24" } @@ -1139,65 +1121,65 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1235:6:12" + "src": "1235:6:14" }, "nodeType": "YulFunctionCall", - "src": "1235:15:12" + "src": "1235:15:14" }, "nodeType": "YulExpressionStatement", - "src": "1235:15:12" + "src": "1235:15:14" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "1076:180:12" + "src": "1076:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "1305:238:12", + "src": "1305:238:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "1315:58:12", + "src": "1315:58:14", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1337:6:12" + "src": "1337:6:14" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1367:4:12" + "src": "1367:4:14" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "1345:21:12" + "src": "1345:21:14" }, "nodeType": "YulFunctionCall", - "src": "1345:27:12" + "src": "1345:27:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1333:3:12" + "src": "1333:3:14" }, "nodeType": "YulFunctionCall", - "src": "1333:40:12" + "src": "1333:40:14" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "1319:10:12", + "src": "1319:10:14", "type": "" } ] @@ -1205,7 +1187,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1484:22:12", + "src": "1484:22:14", "statements": [ { "expression": { @@ -1213,13 +1195,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "1486:16:12" + "src": "1486:16:14" }, "nodeType": "YulFunctionCall", - "src": "1486:18:12" + "src": "1486:18:14" }, "nodeType": "YulExpressionStatement", - "src": "1486:18:12" + "src": "1486:18:14" } ] }, @@ -1230,12 +1212,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1427:10:12" + "src": "1427:10:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1439:18:12", + "src": "1439:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -1243,43 +1225,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1424:2:12" + "src": "1424:2:14" }, "nodeType": "YulFunctionCall", - "src": "1424:34:12" + "src": "1424:34:14" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1463:10:12" + "src": "1463:10:14" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1475:6:12" + "src": "1475:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "1460:2:12" + "src": "1460:2:14" }, "nodeType": "YulFunctionCall", - "src": "1460:22:12" + "src": "1460:22:14" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "1421:2:12" + "src": "1421:2:14" }, "nodeType": "YulFunctionCall", - "src": "1421:62:12" + "src": "1421:62:14" }, "nodeType": "YulIf", - "src": "1418:88:12" + "src": "1418:88:14" }, { "expression": { @@ -1287,26 +1269,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1522:2:12", + "src": "1522:2:14", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1526:10:12" + "src": "1526:10:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1515:6:12" + "src": "1515:6:14" }, "nodeType": "YulFunctionCall", - "src": "1515:22:12" + "src": "1515:22:14" }, "nodeType": "YulExpressionStatement", - "src": "1515:22:12" + "src": "1515:22:14" } ] }, @@ -1316,41 +1298,41 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "1291:6:12", + "src": "1291:6:14", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "1299:4:12", + "src": "1299:4:14", "type": "" } ], - "src": "1262:281:12" + "src": "1262:281:14" }, { "body": { "nodeType": "YulBlock", - "src": "1590:88:12", + "src": "1590:88:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1600:30:12", + "src": "1600:30:14", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "1610:18:12" + "src": "1610:18:14" }, "nodeType": "YulFunctionCall", - "src": "1610:20:12" + "src": "1610:20:14" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1600:6:12" + "src": "1600:6:14" } ] }, @@ -1360,24 +1342,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1659:6:12" + "src": "1659:6:14" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "1667:4:12" + "src": "1667:4:14" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "1639:19:12" + "src": "1639:19:14" }, "nodeType": "YulFunctionCall", - "src": "1639:33:12" + "src": "1639:33:14" }, "nodeType": "YulExpressionStatement", - "src": "1639:33:12" + "src": "1639:33:14" } ] }, @@ -1387,7 +1369,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "1574:4:12", + "src": "1574:4:14", "type": "" } ], @@ -1395,21 +1377,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "1583:6:12", + "src": "1583:6:14", "type": "" } ], - "src": "1549:129:12" + "src": "1549:129:14" }, { "body": { "nodeType": "YulBlock", - "src": "1766:229:12", + "src": "1766:229:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "1871:22:12", + "src": "1871:22:14", "statements": [ { "expression": { @@ -1417,13 +1399,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "1873:16:12" + "src": "1873:16:14" }, "nodeType": "YulFunctionCall", - "src": "1873:18:12" + "src": "1873:18:14" }, "nodeType": "YulExpressionStatement", - "src": "1873:18:12" + "src": "1873:18:14" } ] }, @@ -1432,12 +1414,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "1843:6:12" + "src": "1843:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1851:18:12", + "src": "1851:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -1445,28 +1427,28 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1840:2:12" + "src": "1840:2:14" }, "nodeType": "YulFunctionCall", - "src": "1840:30:12" + "src": "1840:30:14" }, "nodeType": "YulIf", - "src": "1837:56:12" + "src": "1837:56:14" }, { "nodeType": "YulAssignment", - "src": "1903:25:12", + "src": "1903:25:14", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "1915:6:12" + "src": "1915:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1923:4:12", + "src": "1923:4:14", "type": "", "value": "0x20" } @@ -1474,33 +1456,33 @@ "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "1911:3:12" + "src": "1911:3:14" }, "nodeType": "YulFunctionCall", - "src": "1911:17:12" + "src": "1911:17:14" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1903:4:12" + "src": "1903:4:14" } ] }, { "nodeType": "YulAssignment", - "src": "1965:23:12", + "src": "1965:23:14", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1977:4:12" + "src": "1977:4:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1983:4:12", + "src": "1983:4:14", "type": "", "value": "0x20" } @@ -1508,16 +1490,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1973:3:12" + "src": "1973:3:14" }, "nodeType": "YulFunctionCall", - "src": "1973:15:12" + "src": "1973:15:14" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1965:4:12" + "src": "1965:4:14" } ] } @@ -1529,7 +1511,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "1750:6:12", + "src": "1750:6:14", "type": "" } ], @@ -1537,16 +1519,16 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "1761:4:12", + "src": "1761:4:14", "type": "" } ], - "src": "1684:311:12" + "src": "1684:311:14" }, { "body": { "nodeType": "YulBlock", - "src": "2090:28:12", + "src": "2090:28:14", "statements": [ { "expression": { @@ -1554,14 +1536,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "2107:1:12", + "src": "2107:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2110:1:12", + "src": "2110:1:14", "type": "", "value": "0" } @@ -1569,28 +1551,28 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "2100:6:12" + "src": "2100:6:14" }, "nodeType": "YulFunctionCall", - "src": "2100:12:12" + "src": "2100:12:14" }, "nodeType": "YulExpressionStatement", - "src": "2100:12:12" + "src": "2100:12:14" } ] }, "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", "nodeType": "YulFunctionDefinition", - "src": "2001:117:12" + "src": "2001:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "2254:619:12", + "src": "2254:619:14", "statements": [ { "nodeType": "YulAssignment", - "src": "2264:90:12", + "src": "2264:90:14", "value": { "arguments": [ { @@ -1598,47 +1580,47 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "2346:6:12" + "src": "2346:6:14" } ], "functionName": { "name": "array_allocation_size_t_array$_t_address_$dyn_memory_ptr", "nodeType": "YulIdentifier", - "src": "2289:56:12" + "src": "2289:56:14" }, "nodeType": "YulFunctionCall", - "src": "2289:64:12" + "src": "2289:64:14" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "2273:15:12" + "src": "2273:15:14" }, "nodeType": "YulFunctionCall", - "src": "2273:81:12" + "src": "2273:81:14" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "2264:5:12" + "src": "2264:5:14" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2363:16:12", + "src": "2363:16:14", "value": { "name": "array", "nodeType": "YulIdentifier", - "src": "2374:5:12" + "src": "2374:5:14" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "2367:3:12", + "src": "2367:3:14", "type": "" } ] @@ -1649,39 +1631,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "2396:5:12" + "src": "2396:5:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2403:6:12" + "src": "2403:6:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2389:6:12" + "src": "2389:6:14" }, "nodeType": "YulFunctionCall", - "src": "2389:21:12" + "src": "2389:21:14" }, "nodeType": "YulExpressionStatement", - "src": "2389:21:12" + "src": "2389:21:14" }, { "nodeType": "YulAssignment", - "src": "2419:23:12", + "src": "2419:23:14", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "2430:5:12" + "src": "2430:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2437:4:12", + "src": "2437:4:14", "type": "", "value": "0x20" } @@ -1689,40 +1671,40 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2426:3:12" + "src": "2426:3:14" }, "nodeType": "YulFunctionCall", - "src": "2426:16:12" + "src": "2426:16:14" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2419:3:12" + "src": "2419:3:14" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "2452:44:12", + "src": "2452:44:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "2470:6:12" + "src": "2470:6:14" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "2482:6:12" + "src": "2482:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2490:4:12", + "src": "2490:4:14", "type": "", "value": "0x20" } @@ -1730,25 +1712,25 @@ "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "2478:3:12" + "src": "2478:3:14" }, "nodeType": "YulFunctionCall", - "src": "2478:17:12" + "src": "2478:17:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2466:3:12" + "src": "2466:3:14" }, "nodeType": "YulFunctionCall", - "src": "2466:30:12" + "src": "2466:30:14" }, "variables": [ { "name": "srcEnd", "nodeType": "YulTypedName", - "src": "2456:6:12", + "src": "2456:6:14", "type": "" } ] @@ -1756,7 +1738,7 @@ { "body": { "nodeType": "YulBlock", - "src": "2524:103:12", + "src": "2524:103:14", "statements": [ { "expression": { @@ -1764,13 +1746,13 @@ "functionName": { "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", "nodeType": "YulIdentifier", - "src": "2538:77:12" + "src": "2538:77:14" }, "nodeType": "YulFunctionCall", - "src": "2538:79:12" + "src": "2538:79:14" }, "nodeType": "YulExpressionStatement", - "src": "2538:79:12" + "src": "2538:79:14" } ] }, @@ -1779,43 +1761,43 @@ { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "2511:6:12" + "src": "2511:6:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "2519:3:12" + "src": "2519:3:14" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "2508:2:12" + "src": "2508:2:14" }, "nodeType": "YulFunctionCall", - "src": "2508:15:12" + "src": "2508:15:14" }, "nodeType": "YulIf", - "src": "2505:122:12" + "src": "2505:122:14" }, { "body": { "nodeType": "YulBlock", - "src": "2712:155:12", + "src": "2712:155:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "2727:21:12", + "src": "2727:21:14", "value": { "name": "src", "nodeType": "YulIdentifier", - "src": "2745:3:12" + "src": "2745:3:14" }, "variables": [ { "name": "elementPos", "nodeType": "YulTypedName", - "src": "2731:10:12", + "src": "2731:10:14", "type": "" } ] @@ -1826,55 +1808,55 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2769:3:12" + "src": "2769:3:14" }, { "arguments": [ { "name": "elementPos", "nodeType": "YulIdentifier", - "src": "2806:10:12" + "src": "2806:10:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "2818:3:12" + "src": "2818:3:14" } ], "functionName": { "name": "abi_decode_t_address_fromMemory", "nodeType": "YulIdentifier", - "src": "2774:31:12" + "src": "2774:31:14" }, "nodeType": "YulFunctionCall", - "src": "2774:48:12" + "src": "2774:48:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2762:6:12" + "src": "2762:6:14" }, "nodeType": "YulFunctionCall", - "src": "2762:61:12" + "src": "2762:61:14" }, "nodeType": "YulExpressionStatement", - "src": "2762:61:12" + "src": "2762:61:14" }, { "nodeType": "YulAssignment", - "src": "2836:21:12", + "src": "2836:21:14", "value": { "arguments": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2847:3:12" + "src": "2847:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2852:4:12", + "src": "2852:4:14", "type": "", "value": "0x20" } @@ -1882,16 +1864,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2843:3:12" + "src": "2843:3:14" }, "nodeType": "YulFunctionCall", - "src": "2843:14:12" + "src": "2843:14:14" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2836:3:12" + "src": "2836:3:14" } ] } @@ -1902,41 +1884,41 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "2665:3:12" + "src": "2665:3:14" }, { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "2670:6:12" + "src": "2670:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "2662:2:12" + "src": "2662:2:14" }, "nodeType": "YulFunctionCall", - "src": "2662:15:12" + "src": "2662:15:14" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "2678:25:12", + "src": "2678:25:14", "statements": [ { "nodeType": "YulAssignment", - "src": "2680:21:12", + "src": "2680:21:14", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "2691:3:12" + "src": "2691:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2696:4:12", + "src": "2696:4:14", "type": "", "value": "0x20" } @@ -1944,16 +1926,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2687:3:12" + "src": "2687:3:14" }, "nodeType": "YulFunctionCall", - "src": "2687:14:12" + "src": "2687:14:14" }, "variableNames": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "2680:3:12" + "src": "2680:3:14" } ] } @@ -1961,28 +1943,28 @@ }, "pre": { "nodeType": "YulBlock", - "src": "2640:21:12", + "src": "2640:21:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "2642:17:12", + "src": "2642:17:14", "value": { "name": "offset", "nodeType": "YulIdentifier", - "src": "2653:6:12" + "src": "2653:6:14" }, "variables": [ { "name": "src", "nodeType": "YulTypedName", - "src": "2646:3:12", + "src": "2646:3:14", "type": "" } ] } ] }, - "src": "2636:231:12" + "src": "2636:231:14" } ] }, @@ -1992,19 +1974,19 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "2224:6:12", + "src": "2224:6:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "2232:6:12", + "src": "2232:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "2240:3:12", + "src": "2240:3:14", "type": "" } ], @@ -2012,21 +1994,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "2248:5:12", + "src": "2248:5:14", "type": "" } ], - "src": "2141:732:12" + "src": "2141:732:14" }, { "body": { "nodeType": "YulBlock", - "src": "2984:297:12", + "src": "2984:297:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3033:83:12", + "src": "3033:83:14", "statements": [ { "expression": { @@ -2034,13 +2016,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "3035:77:12" + "src": "3035:77:14" }, "nodeType": "YulFunctionCall", - "src": "3035:79:12" + "src": "3035:79:14" }, "nodeType": "YulExpressionStatement", - "src": "3035:79:12" + "src": "3035:79:14" } ] }, @@ -2053,12 +2035,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3012:6:12" + "src": "3012:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3020:4:12", + "src": "3020:4:14", "type": "", "value": "0x1f" } @@ -2066,68 +2048,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3008:3:12" + "src": "3008:3:14" }, "nodeType": "YulFunctionCall", - "src": "3008:17:12" + "src": "3008:17:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "3027:3:12" + "src": "3027:3:14" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3004:3:12" + "src": "3004:3:14" }, "nodeType": "YulFunctionCall", - "src": "3004:27:12" + "src": "3004:27:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "2997:6:12" + "src": "2997:6:14" }, "nodeType": "YulFunctionCall", - "src": "2997:35:12" + "src": "2997:35:14" }, "nodeType": "YulIf", - "src": "2994:122:12" + "src": "2994:122:14" }, { "nodeType": "YulVariableDeclaration", - "src": "3125:27:12", + "src": "3125:27:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3145:6:12" + "src": "3145:6:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3139:5:12" + "src": "3139:5:14" }, "nodeType": "YulFunctionCall", - "src": "3139:13:12" + "src": "3139:13:14" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "3129:6:12", + "src": "3129:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3161:114:12", + "src": "3161:114:14", "value": { "arguments": [ { @@ -2135,12 +2117,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3248:6:12" + "src": "3248:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3256:4:12", + "src": "3256:4:14", "type": "", "value": "0x20" } @@ -2148,35 +2130,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3244:3:12" + "src": "3244:3:14" }, "nodeType": "YulFunctionCall", - "src": "3244:17:12" + "src": "3244:17:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "3263:6:12" + "src": "3263:6:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "3271:3:12" + "src": "3271:3:14" } ], "functionName": { "name": "abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "3170:73:12" + "src": "3170:73:14" }, "nodeType": "YulFunctionCall", - "src": "3170:105:12" + "src": "3170:105:14" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "3161:5:12" + "src": "3161:5:14" } ] } @@ -2188,13 +2170,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "2962:6:12", + "src": "2962:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "2970:3:12", + "src": "2970:3:14", "type": "" } ], @@ -2202,21 +2184,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "2978:5:12", + "src": "2978:5:14", "type": "" } ], - "src": "2896:385:12" + "src": "2896:385:14" }, { "body": { "nodeType": "YulBlock", - "src": "3406:591:12", + "src": "3406:591:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3452:83:12", + "src": "3452:83:14", "statements": [ { "expression": { @@ -2224,13 +2206,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "3454:77:12" + "src": "3454:77:14" }, "nodeType": "YulFunctionCall", - "src": "3454:79:12" + "src": "3454:79:14" }, "nodeType": "YulExpressionStatement", - "src": "3454:79:12" + "src": "3454:79:14" } ] }, @@ -2241,26 +2223,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3427:7:12" + "src": "3427:7:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3436:9:12" + "src": "3436:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3423:3:12" + "src": "3423:3:14" }, "nodeType": "YulFunctionCall", - "src": "3423:23:12" + "src": "3423:23:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3448:2:12", + "src": "3448:2:14", "type": "", "value": "64" } @@ -2268,25 +2250,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3419:3:12" + "src": "3419:3:14" }, "nodeType": "YulFunctionCall", - "src": "3419:32:12" + "src": "3419:32:14" }, "nodeType": "YulIf", - "src": "3416:119:12" + "src": "3416:119:14" }, { "nodeType": "YulBlock", - "src": "3545:128:12", + "src": "3545:128:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3560:15:12", + "src": "3560:15:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3574:1:12", + "src": "3574:1:14", "type": "", "value": "0" }, @@ -2294,14 +2276,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3564:6:12", + "src": "3564:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3589:74:12", + "src": "3589:74:14", "value": { "arguments": [ { @@ -2309,41 +2291,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3635:9:12" + "src": "3635:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3646:6:12" + "src": "3646:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3631:3:12" + "src": "3631:3:14" }, "nodeType": "YulFunctionCall", - "src": "3631:22:12" + "src": "3631:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3655:7:12" + "src": "3655:7:14" } ], "functionName": { "name": "abi_decode_t_address_fromMemory", "nodeType": "YulIdentifier", - "src": "3599:31:12" + "src": "3599:31:14" }, "nodeType": "YulFunctionCall", - "src": "3599:64:12" + "src": "3599:64:14" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3589:6:12" + "src": "3589:6:14" } ] } @@ -2351,11 +2333,11 @@ }, { "nodeType": "YulBlock", - "src": "3683:307:12", + "src": "3683:307:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3698:39:12", + "src": "3698:39:14", "value": { "arguments": [ { @@ -2363,12 +2345,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3722:9:12" + "src": "3722:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3733:2:12", + "src": "3733:2:14", "type": "", "value": "32" } @@ -2376,25 +2358,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3718:3:12" + "src": "3718:3:14" }, "nodeType": "YulFunctionCall", - "src": "3718:18:12" + "src": "3718:18:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3712:5:12" + "src": "3712:5:14" }, "nodeType": "YulFunctionCall", - "src": "3712:25:12" + "src": "3712:25:14" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "3702:6:12", + "src": "3702:6:14", "type": "" } ] @@ -2402,7 +2384,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3784:83:12", + "src": "3784:83:14", "statements": [ { "expression": { @@ -2410,13 +2392,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "3786:77:12" + "src": "3786:77:14" }, "nodeType": "YulFunctionCall", - "src": "3786:79:12" + "src": "3786:79:14" }, "nodeType": "YulExpressionStatement", - "src": "3786:79:12" + "src": "3786:79:14" } ] }, @@ -2425,12 +2407,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3756:6:12" + "src": "3756:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3764:18:12", + "src": "3764:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -2438,17 +2420,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "3753:2:12" + "src": "3753:2:14" }, "nodeType": "YulFunctionCall", - "src": "3753:30:12" + "src": "3753:30:14" }, "nodeType": "YulIf", - "src": "3750:117:12" + "src": "3750:117:14" }, { "nodeType": "YulAssignment", - "src": "3881:99:12", + "src": "3881:99:14", "value": { "arguments": [ { @@ -2456,41 +2438,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3952:9:12" + "src": "3952:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3963:6:12" + "src": "3963:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3948:3:12" + "src": "3948:3:14" }, "nodeType": "YulFunctionCall", - "src": "3948:22:12" + "src": "3948:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3972:7:12" + "src": "3972:7:14" } ], "functionName": { "name": "abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "3891:56:12" + "src": "3891:56:14" }, "nodeType": "YulFunctionCall", - "src": "3891:89:12" + "src": "3891:89:14" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "3881:6:12" + "src": "3881:6:14" } ] } @@ -2504,13 +2486,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3368:9:12", + "src": "3368:9:14", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3379:7:12", + "src": "3379:7:14", "type": "" } ], @@ -2518,22 +2500,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3391:6:12", + "src": "3391:6:14", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "3399:6:12", + "src": "3399:6:14", "type": "" } ], - "src": "3287:710:12" + "src": "3287:710:14" }, { "body": { "nodeType": "YulBlock", - "src": "4031:152:12", + "src": "4031:152:14", "statements": [ { "expression": { @@ -2541,14 +2523,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4048:1:12", + "src": "4048:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4051:77:12", + "src": "4051:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -2556,13 +2538,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4041:6:12" + "src": "4041:6:14" }, "nodeType": "YulFunctionCall", - "src": "4041:88:12" + "src": "4041:88:14" }, "nodeType": "YulExpressionStatement", - "src": "4041:88:12" + "src": "4041:88:14" }, { "expression": { @@ -2570,14 +2552,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4145:1:12", + "src": "4145:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4148:4:12", + "src": "4148:4:14", "type": "", "value": "0x32" } @@ -2585,13 +2567,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4138:6:12" + "src": "4138:6:14" }, "nodeType": "YulFunctionCall", - "src": "4138:15:12" + "src": "4138:15:14" }, "nodeType": "YulExpressionStatement", - "src": "4138:15:12" + "src": "4138:15:14" }, { "expression": { @@ -2599,14 +2581,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4169:1:12", + "src": "4169:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4172:4:12", + "src": "4172:4:14", "type": "", "value": "0x24" } @@ -2614,24 +2596,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4162:6:12" + "src": "4162:6:14" }, "nodeType": "YulFunctionCall", - "src": "4162:15:12" + "src": "4162:15:14" }, "nodeType": "YulExpressionStatement", - "src": "4162:15:12" + "src": "4162:15:14" } ] }, "name": "panic_error_0x32", "nodeType": "YulFunctionDefinition", - "src": "4003:180:12" + "src": "4003:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "4217:152:12", + "src": "4217:152:14", "statements": [ { "expression": { @@ -2639,14 +2621,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4234:1:12", + "src": "4234:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4237:77:12", + "src": "4237:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -2654,13 +2636,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4227:6:12" + "src": "4227:6:14" }, "nodeType": "YulFunctionCall", - "src": "4227:88:12" + "src": "4227:88:14" }, "nodeType": "YulExpressionStatement", - "src": "4227:88:12" + "src": "4227:88:14" }, { "expression": { @@ -2668,14 +2650,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4331:1:12", + "src": "4331:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4334:4:12", + "src": "4334:4:14", "type": "", "value": "0x11" } @@ -2683,13 +2665,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4324:6:12" + "src": "4324:6:14" }, "nodeType": "YulFunctionCall", - "src": "4324:15:12" + "src": "4324:15:14" }, "nodeType": "YulExpressionStatement", - "src": "4324:15:12" + "src": "4324:15:14" }, { "expression": { @@ -2697,14 +2679,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4355:1:12", + "src": "4355:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4358:4:12", + "src": "4358:4:14", "type": "", "value": "0x24" } @@ -2712,38 +2694,38 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4348:6:12" + "src": "4348:6:14" }, "nodeType": "YulFunctionCall", - "src": "4348:15:12" + "src": "4348:15:14" }, "nodeType": "YulExpressionStatement", - "src": "4348:15:12" + "src": "4348:15:14" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "4189:180:12" + "src": "4189:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "4420:32:12", + "src": "4420:32:14", "statements": [ { "nodeType": "YulAssignment", - "src": "4430:16:12", + "src": "4430:16:14", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "4441:5:12" + "src": "4441:5:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "4430:7:12" + "src": "4430:7:14" } ] } @@ -2755,7 +2737,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4402:5:12", + "src": "4402:5:14", "type": "" } ], @@ -2763,48 +2745,48 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "4412:7:12", + "src": "4412:7:14", "type": "" } ], - "src": "4375:77:12" + "src": "4375:77:14" }, { "body": { "nodeType": "YulBlock", - "src": "4501:190:12", + "src": "4501:190:14", "statements": [ { "nodeType": "YulAssignment", - "src": "4511:33:12", + "src": "4511:33:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4538:5:12" + "src": "4538:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "4520:17:12" + "src": "4520:17:14" }, "nodeType": "YulFunctionCall", - "src": "4520:24:12" + "src": "4520:24:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4511:5:12" + "src": "4511:5:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "4634:22:12", + "src": "4634:22:14", "statements": [ { "expression": { @@ -2812,13 +2794,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "4636:16:12" + "src": "4636:16:14" }, "nodeType": "YulFunctionCall", - "src": "4636:18:12" + "src": "4636:18:14" }, "nodeType": "YulExpressionStatement", - "src": "4636:18:12" + "src": "4636:18:14" } ] }, @@ -2827,12 +2809,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4559:5:12" + "src": "4559:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4566:66:12", + "src": "4566:66:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" } @@ -2840,28 +2822,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "4556:2:12" + "src": "4556:2:14" }, "nodeType": "YulFunctionCall", - "src": "4556:77:12" + "src": "4556:77:14" }, "nodeType": "YulIf", - "src": "4553:103:12" + "src": "4553:103:14" }, { "nodeType": "YulAssignment", - "src": "4665:20:12", + "src": "4665:20:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4676:5:12" + "src": "4676:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4683:1:12", + "src": "4683:1:14", "type": "", "value": "1" } @@ -2869,16 +2851,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4672:3:12" + "src": "4672:3:14" }, "nodeType": "YulFunctionCall", - "src": "4672:13:12" + "src": "4672:13:14" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "4665:3:12" + "src": "4665:3:14" } ] } @@ -2890,7 +2872,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4487:5:12", + "src": "4487:5:14", "type": "" } ], @@ -2898,16 +2880,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "4497:3:12", + "src": "4497:3:14", "type": "" } ], - "src": "4458:233:12" + "src": "4458:233:14" } ] }, "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\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_$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[]\n function abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_address_$dyn_memory_ptr(length))\n let dst := array\n\n mstore(array, length)\n dst := add(array, 0x20)\n\n let 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_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // address[]\n function abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_array$_t_address_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\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": 12, + "id": 14, "language": "Yul", "name": "#utility.yul" } @@ -2916,22 +2898,22 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:26075:12", + "src": "0:26075:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "47:35:12", + "src": "47:35:14", "statements": [ { "nodeType": "YulAssignment", - "src": "57:19:12", + "src": "57:19:14", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "73:2:12", + "src": "73:2:14", "type": "", "value": "64" } @@ -2939,16 +2921,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "67:5:12" + "src": "67:5:14" }, "nodeType": "YulFunctionCall", - "src": "67:9:12" + "src": "67:9:14" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "57:6:12" + "src": "57:6:14" } ] } @@ -2960,16 +2942,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40:6:12", + "src": "40:6:14", "type": "" } ], - "src": "7:75:12" + "src": "7:75:14" }, { "body": { "nodeType": "YulBlock", - "src": "177:28:12", + "src": "177:28:14", "statements": [ { "expression": { @@ -2977,14 +2959,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "194:1:12", + "src": "194:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "197:1:12", + "src": "197:1:14", "type": "", "value": "0" } @@ -2992,24 +2974,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "187:6:12" + "src": "187:6:14" }, "nodeType": "YulFunctionCall", - "src": "187:12:12" + "src": "187:12:14" }, "nodeType": "YulExpressionStatement", - "src": "187:12:12" + "src": "187:12:14" } ] }, "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulFunctionDefinition", - "src": "88:117:12" + "src": "88:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "300:28:12", + "src": "300:28:14", "statements": [ { "expression": { @@ -3017,14 +2999,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "317:1:12", + "src": "317:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "320:1:12", + "src": "320:1:14", "type": "", "value": "0" } @@ -3032,39 +3014,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "310:6:12" + "src": "310:6:14" }, "nodeType": "YulFunctionCall", - "src": "310:12:12" + "src": "310:12:14" }, "nodeType": "YulExpressionStatement", - "src": "310:12:12" + "src": "310:12:14" } ] }, "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulFunctionDefinition", - "src": "211:117:12" + "src": "211:117:14" }, { "body": { "nodeType": "YulBlock", - "src": "378:105:12", + "src": "378:105:14", "statements": [ { "nodeType": "YulAssignment", - "src": "388:89:12", + "src": "388:89:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "403:5:12" + "src": "403:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "410:66:12", + "src": "410:66:14", "type": "", "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" } @@ -3072,16 +3054,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "399:3:12" + "src": "399:3:14" }, "nodeType": "YulFunctionCall", - "src": "399:78:12" + "src": "399:78:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "388:7:12" + "src": "388:7:14" } ] } @@ -3093,7 +3075,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "360:5:12", + "src": "360:5:14", "type": "" } ], @@ -3101,21 +3083,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "370:7:12", + "src": "370:7:14", "type": "" } ], - "src": "334:149:12" + "src": "334:149:14" }, { "body": { "nodeType": "YulBlock", - "src": "531:78:12", + "src": "531:78:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "587:16:12", + "src": "587:16:14", "statements": [ { "expression": { @@ -3123,14 +3105,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "596:1:12", + "src": "596:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "599:1:12", + "src": "599:1:14", "type": "", "value": "0" } @@ -3138,13 +3120,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "589:6:12" + "src": "589:6:14" }, "nodeType": "YulFunctionCall", - "src": "589:12:12" + "src": "589:12:14" }, "nodeType": "YulExpressionStatement", - "src": "589:12:12" + "src": "589:12:14" } ] }, @@ -3155,44 +3137,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "554:5:12" + "src": "554:5:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "578:5:12" + "src": "578:5:14" } ], "functionName": { "name": "cleanup_t_bytes4", "nodeType": "YulIdentifier", - "src": "561:16:12" + "src": "561:16:14" }, "nodeType": "YulFunctionCall", - "src": "561:23:12" + "src": "561:23:14" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "551:2:12" + "src": "551:2:14" }, "nodeType": "YulFunctionCall", - "src": "551:34:12" + "src": "551:34:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "544:6:12" + "src": "544:6:14" }, "nodeType": "YulFunctionCall", - "src": "544:42:12" + "src": "544:42:14" }, "nodeType": "YulIf", - "src": "541:62:12" + "src": "541:62:14" } ] }, @@ -3202,41 +3184,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "524:5:12", + "src": "524:5:14", "type": "" } ], - "src": "489:120:12" + "src": "489:120:14" }, { "body": { "nodeType": "YulBlock", - "src": "666:86:12", + "src": "666:86:14", "statements": [ { "nodeType": "YulAssignment", - "src": "676:29:12", + "src": "676:29:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "698:6:12" + "src": "698:6:14" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "685:12:12" + "src": "685:12:14" }, "nodeType": "YulFunctionCall", - "src": "685:20:12" + "src": "685:20:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "676:5:12" + "src": "676:5:14" } ] }, @@ -3246,19 +3228,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "740:5:12" + "src": "740:5:14" } ], "functionName": { "name": "validator_revert_t_bytes4", "nodeType": "YulIdentifier", - "src": "714:25:12" + "src": "714:25:14" }, "nodeType": "YulFunctionCall", - "src": "714:32:12" + "src": "714:32:14" }, "nodeType": "YulExpressionStatement", - "src": "714:32:12" + "src": "714:32:14" } ] }, @@ -3268,13 +3250,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "644:6:12", + "src": "644:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "652:3:12", + "src": "652:3:14", "type": "" } ], @@ -3282,21 +3264,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "660:5:12", + "src": "660:5:14", "type": "" } ], - "src": "615:137:12" + "src": "615:137:14" }, { "body": { "nodeType": "YulBlock", - "src": "823:262:12", + "src": "823:262:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "869:83:12", + "src": "869:83:14", "statements": [ { "expression": { @@ -3304,13 +3286,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "871:77:12" + "src": "871:77:14" }, "nodeType": "YulFunctionCall", - "src": "871:79:12" + "src": "871:79:14" }, "nodeType": "YulExpressionStatement", - "src": "871:79:12" + "src": "871:79:14" } ] }, @@ -3321,26 +3303,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "844:7:12" + "src": "844:7:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "853:9:12" + "src": "853:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "840:3:12" + "src": "840:3:14" }, "nodeType": "YulFunctionCall", - "src": "840:23:12" + "src": "840:23:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "865:2:12", + "src": "865:2:14", "type": "", "value": "32" } @@ -3348,25 +3330,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "836:3:12" + "src": "836:3:14" }, "nodeType": "YulFunctionCall", - "src": "836:32:12" + "src": "836:32:14" }, "nodeType": "YulIf", - "src": "833:119:12" + "src": "833:119:14" }, { "nodeType": "YulBlock", - "src": "962:116:12", + "src": "962:116:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "977:15:12", + "src": "977:15:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "991:1:12", + "src": "991:1:14", "type": "", "value": "0" }, @@ -3374,14 +3356,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "981:6:12", + "src": "981:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "1006:62:12", + "src": "1006:62:14", "value": { "arguments": [ { @@ -3389,41 +3371,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1040:9:12" + "src": "1040:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "1051:6:12" + "src": "1051:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1036:3:12" + "src": "1036:3:14" }, "nodeType": "YulFunctionCall", - "src": "1036:22:12" + "src": "1036:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "1060:7:12" + "src": "1060:7:14" } ], "functionName": { "name": "abi_decode_t_bytes4", "nodeType": "YulIdentifier", - "src": "1016:19:12" + "src": "1016:19:14" }, "nodeType": "YulFunctionCall", - "src": "1016:52:12" + "src": "1016:52:14" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1006:6:12" + "src": "1006:6:14" } ] } @@ -3437,13 +3419,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "793:9:12", + "src": "793:9:14", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "804:7:12", + "src": "804:7:14", "type": "" } ], @@ -3451,20 +3433,20 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "816:6:12", + "src": "816:6:14", "type": "" } ], - "src": "758:327:12" + "src": "758:327:14" }, { "body": { "nodeType": "YulBlock", - "src": "1133:48:12", + "src": "1133:48:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1143:32:12", + "src": "1143:32:14", "value": { "arguments": [ { @@ -3472,31 +3454,31 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "1168:5:12" + "src": "1168:5:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1161:6:12" + "src": "1161:6:14" }, "nodeType": "YulFunctionCall", - "src": "1161:13:12" + "src": "1161:13:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1154:6:12" + "src": "1154:6:14" }, "nodeType": "YulFunctionCall", - "src": "1154:21:12" + "src": "1154:21:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "1143:7:12" + "src": "1143:7:14" } ] } @@ -3508,7 +3490,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1115:5:12", + "src": "1115:5:14", "type": "" } ], @@ -3516,16 +3498,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "1125:7:12", + "src": "1125:7:14", "type": "" } ], - "src": "1091:90:12" + "src": "1091:90:14" }, { "body": { "nodeType": "YulBlock", - "src": "1246:50:12", + "src": "1246:50:14", "statements": [ { "expression": { @@ -3533,35 +3515,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1263:3:12" + "src": "1263:3:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1283:5:12" + "src": "1283:5:14" } ], "functionName": { "name": "cleanup_t_bool", "nodeType": "YulIdentifier", - "src": "1268:14:12" + "src": "1268:14:14" }, "nodeType": "YulFunctionCall", - "src": "1268:21:12" + "src": "1268:21:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1256:6:12" + "src": "1256:6:14" }, "nodeType": "YulFunctionCall", - "src": "1256:34:12" + "src": "1256:34:14" }, "nodeType": "YulExpressionStatement", - "src": "1256:34:12" + "src": "1256:34:14" } ] }, @@ -3571,37 +3553,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1234:5:12", + "src": "1234:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "1241:3:12", + "src": "1241:3:14", "type": "" } ], - "src": "1187:109:12" + "src": "1187:109:14" }, { "body": { "nodeType": "YulBlock", - "src": "1394:118:12", + "src": "1394:118:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1404:26:12", + "src": "1404:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1416:9:12" + "src": "1416:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1427:2:12", + "src": "1427:2:14", "type": "", "value": "32" } @@ -3609,16 +3591,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1412:3:12" + "src": "1412:3:14" }, "nodeType": "YulFunctionCall", - "src": "1412:18:12" + "src": "1412:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "1404:4:12" + "src": "1404:4:14" } ] }, @@ -3628,19 +3610,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1478:6:12" + "src": "1478:6:14" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1491:9:12" + "src": "1491:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1502:1:12", + "src": "1502:1:14", "type": "", "value": "0" } @@ -3648,22 +3630,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1487:3:12" + "src": "1487:3:14" }, "nodeType": "YulFunctionCall", - "src": "1487:17:12" + "src": "1487:17:14" } ], "functionName": { "name": "abi_encode_t_bool_to_t_bool_fromStack", "nodeType": "YulIdentifier", - "src": "1440:37:12" + "src": "1440:37:14" }, "nodeType": "YulFunctionCall", - "src": "1440:65:12" + "src": "1440:65:14" }, "nodeType": "YulExpressionStatement", - "src": "1440:65:12" + "src": "1440:65:14" } ] }, @@ -3673,13 +3655,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "1366:9:12", + "src": "1366:9:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "1378:6:12", + "src": "1378:6:14", "type": "" } ], @@ -3687,31 +3669,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "1389:4:12", + "src": "1389:4:14", "type": "" } ], - "src": "1302:210:12" + "src": "1302:210:14" }, { "body": { "nodeType": "YulBlock", - "src": "1563:81:12", + "src": "1563:81:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1573:65:12", + "src": "1573:65:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1588:5:12" + "src": "1588:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1595:42:12", + "src": "1595:42:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -3719,16 +3701,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "1584:3:12" + "src": "1584:3:14" }, "nodeType": "YulFunctionCall", - "src": "1584:54:12" + "src": "1584:54:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "1573:7:12" + "src": "1573:7:14" } ] } @@ -3740,7 +3722,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1545:5:12", + "src": "1545:5:14", "type": "" } ], @@ -3748,41 +3730,41 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "1555:7:12", + "src": "1555:7:14", "type": "" } ], - "src": "1518:126:12" + "src": "1518:126:14" }, { "body": { "nodeType": "YulBlock", - "src": "1695:51:12", + "src": "1695:51:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1705:35:12", + "src": "1705:35:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1734:5:12" + "src": "1734:5:14" } ], "functionName": { "name": "cleanup_t_uint160", "nodeType": "YulIdentifier", - "src": "1716:17:12" + "src": "1716:17:14" }, "nodeType": "YulFunctionCall", - "src": "1716:24:12" + "src": "1716:24:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "1705:7:12" + "src": "1705:7:14" } ] } @@ -3794,7 +3776,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1677:5:12", + "src": "1677:5:14", "type": "" } ], @@ -3802,21 +3784,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "1687:7:12", + "src": "1687:7:14", "type": "" } ], - "src": "1650:96:12" + "src": "1650:96:14" }, { "body": { "nodeType": "YulBlock", - "src": "1795:79:12", + "src": "1795:79:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "1852:16:12", + "src": "1852:16:14", "statements": [ { "expression": { @@ -3824,14 +3806,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1861:1:12", + "src": "1861:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1864:1:12", + "src": "1864:1:14", "type": "", "value": "0" } @@ -3839,13 +3821,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "1854:6:12" + "src": "1854:6:14" }, "nodeType": "YulFunctionCall", - "src": "1854:12:12" + "src": "1854:12:14" }, "nodeType": "YulExpressionStatement", - "src": "1854:12:12" + "src": "1854:12:14" } ] }, @@ -3856,44 +3838,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "1818:5:12" + "src": "1818:5:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1843:5:12" + "src": "1843:5:14" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "1825:17:12" + "src": "1825:17:14" }, "nodeType": "YulFunctionCall", - "src": "1825:24:12" + "src": "1825:24:14" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "1815:2:12" + "src": "1815:2:14" }, "nodeType": "YulFunctionCall", - "src": "1815:35:12" + "src": "1815:35:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1808:6:12" + "src": "1808:6:14" }, "nodeType": "YulFunctionCall", - "src": "1808:43:12" + "src": "1808:43:14" }, "nodeType": "YulIf", - "src": "1805:63:12" + "src": "1805:63:14" } ] }, @@ -3903,41 +3885,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1788:5:12", + "src": "1788:5:14", "type": "" } ], - "src": "1752:122:12" + "src": "1752:122:14" }, { "body": { "nodeType": "YulBlock", - "src": "1932:87:12", + "src": "1932:87:14", "statements": [ { "nodeType": "YulAssignment", - "src": "1942:29:12", + "src": "1942:29:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "1964:6:12" + "src": "1964:6:14" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "1951:12:12" + "src": "1951:12:14" }, "nodeType": "YulFunctionCall", - "src": "1951:20:12" + "src": "1951:20:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1942:5:12" + "src": "1942:5:14" } ] }, @@ -3947,19 +3929,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2007:5:12" + "src": "2007:5:14" } ], "functionName": { "name": "validator_revert_t_address", "nodeType": "YulIdentifier", - "src": "1980:26:12" + "src": "1980:26:14" }, "nodeType": "YulFunctionCall", - "src": "1980:33:12" + "src": "1980:33:14" }, "nodeType": "YulExpressionStatement", - "src": "1980:33:12" + "src": "1980:33:14" } ] }, @@ -3969,13 +3951,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "1910:6:12", + "src": "1910:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "1918:3:12", + "src": "1918:3:14", "type": "" } ], @@ -3983,21 +3965,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1926:5:12", + "src": "1926:5:14", "type": "" } ], - "src": "1880:139:12" + "src": "1880:139:14" }, { "body": { "nodeType": "YulBlock", - "src": "2091:263:12", + "src": "2091:263:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "2137:83:12", + "src": "2137:83:14", "statements": [ { "expression": { @@ -4005,13 +3987,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "2139:77:12" + "src": "2139:77:14" }, "nodeType": "YulFunctionCall", - "src": "2139:79:12" + "src": "2139:79:14" }, "nodeType": "YulExpressionStatement", - "src": "2139:79:12" + "src": "2139:79:14" } ] }, @@ -4022,26 +4004,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "2112:7:12" + "src": "2112:7:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2121:9:12" + "src": "2121:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "2108:3:12" + "src": "2108:3:14" }, "nodeType": "YulFunctionCall", - "src": "2108:23:12" + "src": "2108:23:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2133:2:12", + "src": "2133:2:14", "type": "", "value": "32" } @@ -4049,25 +4031,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "2104:3:12" + "src": "2104:3:14" }, "nodeType": "YulFunctionCall", - "src": "2104:32:12" + "src": "2104:32:14" }, "nodeType": "YulIf", - "src": "2101:119:12" + "src": "2101:119:14" }, { "nodeType": "YulBlock", - "src": "2230:117:12", + "src": "2230:117:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "2245:15:12", + "src": "2245:15:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "2259:1:12", + "src": "2259:1:14", "type": "", "value": "0" }, @@ -4075,14 +4057,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "2249:6:12", + "src": "2249:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "2274:63:12", + "src": "2274:63:14", "value": { "arguments": [ { @@ -4090,41 +4072,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2309:9:12" + "src": "2309:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "2320:6:12" + "src": "2320:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2305:3:12" + "src": "2305:3:14" }, "nodeType": "YulFunctionCall", - "src": "2305:22:12" + "src": "2305:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "2329:7:12" + "src": "2329:7:14" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "2284:20:12" + "src": "2284:20:14" }, "nodeType": "YulFunctionCall", - "src": "2284:53:12" + "src": "2284:53:14" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2274:6:12" + "src": "2274:6:14" } ] } @@ -4138,13 +4120,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "2061:9:12", + "src": "2061:9:14", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "2072:7:12", + "src": "2072:7:14", "type": "" } ], @@ -4152,41 +4134,41 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "2084:6:12", + "src": "2084:6:14", "type": "" } ], - "src": "2025:329:12" + "src": "2025:329:14" }, { "body": { "nodeType": "YulBlock", - "src": "2434:40:12", + "src": "2434:40:14", "statements": [ { "nodeType": "YulAssignment", - "src": "2445:22:12", + "src": "2445:22:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "2461:5:12" + "src": "2461:5:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2455:5:12" + "src": "2455:5:14" }, "nodeType": "YulFunctionCall", - "src": "2455:12:12" + "src": "2455:12:14" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "2445:6:12" + "src": "2445:6:14" } ] } @@ -4198,7 +4180,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2417:5:12", + "src": "2417:5:14", "type": "" } ], @@ -4206,16 +4188,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "2427:6:12", + "src": "2427:6:14", "type": "" } ], - "src": "2360:114:12" + "src": "2360:114:14" }, { "body": { "nodeType": "YulBlock", - "src": "2591:73:12", + "src": "2591:73:14", "statements": [ { "expression": { @@ -4223,39 +4205,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2608:3:12" + "src": "2608:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2613:6:12" + "src": "2613:6:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2601:6:12" + "src": "2601:6:14" }, "nodeType": "YulFunctionCall", - "src": "2601:19:12" + "src": "2601:19:14" }, "nodeType": "YulExpressionStatement", - "src": "2601:19:12" + "src": "2601:19:14" }, { "nodeType": "YulAssignment", - "src": "2629:29:12", + "src": "2629:29:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2648:3:12" + "src": "2648:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2653:4:12", + "src": "2653:4:14", "type": "", "value": "0x20" } @@ -4263,16 +4245,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2644:3:12" + "src": "2644:3:14" }, "nodeType": "YulFunctionCall", - "src": "2644:14:12" + "src": "2644:14:14" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "2629:11:12" + "src": "2629:11:14" } ] } @@ -4284,13 +4266,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "2563:3:12", + "src": "2563:3:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "2568:6:12", + "src": "2568:6:14", "type": "" } ], @@ -4298,47 +4280,47 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "2579:11:12", + "src": "2579:11:14", "type": "" } ], - "src": "2480:184:12" + "src": "2480:184:14" }, { "body": { "nodeType": "YulBlock", - "src": "2742:60:12", + "src": "2742:60:14", "statements": [ { "nodeType": "YulAssignment", - "src": "2752:11:12", + "src": "2752:11:14", "value": { "name": "ptr", "nodeType": "YulIdentifier", - "src": "2760:3:12" + "src": "2760:3:14" }, "variableNames": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "2752:4:12" + "src": "2752:4:14" } ] }, { "nodeType": "YulAssignment", - "src": "2773:22:12", + "src": "2773:22:14", "value": { "arguments": [ { "name": "ptr", "nodeType": "YulIdentifier", - "src": "2785:3:12" + "src": "2785:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2790:4:12", + "src": "2790:4:14", "type": "", "value": "0x20" } @@ -4346,16 +4328,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2781:3:12" + "src": "2781:3:14" }, "nodeType": "YulFunctionCall", - "src": "2781:14:12" + "src": "2781:14:14" }, "variableNames": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "2773:4:12" + "src": "2773:4:14" } ] } @@ -4367,7 +4349,7 @@ { "name": "ptr", "nodeType": "YulTypedName", - "src": "2729:3:12", + "src": "2729:3:14", "type": "" } ], @@ -4375,30 +4357,30 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "2737:4:12", + "src": "2737:4:14", "type": "" } ], - "src": "2670:132:12" + "src": "2670:132:14" }, { "body": { "nodeType": "YulBlock", - "src": "2853:32:12", + "src": "2853:32:14", "statements": [ { "nodeType": "YulAssignment", - "src": "2863:16:12", + "src": "2863:16:14", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "2874:5:12" + "src": "2874:5:14" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "2863:7:12" + "src": "2863:7:14" } ] } @@ -4410,7 +4392,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2835:5:12", + "src": "2835:5:14", "type": "" } ], @@ -4418,16 +4400,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "2845:7:12", + "src": "2845:7:14", "type": "" } ], - "src": "2808:77:12" + "src": "2808:77:14" }, { "body": { "nodeType": "YulBlock", - "src": "2946:53:12", + "src": "2946:53:14", "statements": [ { "expression": { @@ -4435,35 +4417,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2963:3:12" + "src": "2963:3:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "2986:5:12" + "src": "2986:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "2968:17:12" + "src": "2968:17:14" }, "nodeType": "YulFunctionCall", - "src": "2968:24:12" + "src": "2968:24:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2956:6:12" + "src": "2956:6:14" }, "nodeType": "YulFunctionCall", - "src": "2956:37:12" + "src": "2956:37:14" }, "nodeType": "YulExpressionStatement", - "src": "2956:37:12" + "src": "2956:37:14" } ] }, @@ -4473,22 +4455,22 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2934:5:12", + "src": "2934:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "2941:3:12", + "src": "2941:3:14", "type": "" } ], - "src": "2891:108:12" + "src": "2891:108:14" }, { "body": { "nodeType": "YulBlock", - "src": "3085:99:12", + "src": "3085:99:14", "statements": [ { "expression": { @@ -4496,39 +4478,39 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3129:6:12" + "src": "3129:6:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "3137:3:12" + "src": "3137:3:14" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256", "nodeType": "YulIdentifier", - "src": "3095:33:12" + "src": "3095:33:14" }, "nodeType": "YulFunctionCall", - "src": "3095:46:12" + "src": "3095:46:14" }, "nodeType": "YulExpressionStatement", - "src": "3095:46:12" + "src": "3095:46:14" }, { "nodeType": "YulAssignment", - "src": "3150:28:12", + "src": "3150:28:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3168:3:12" + "src": "3168:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3173:4:12", + "src": "3173:4:14", "type": "", "value": "0x20" } @@ -4536,16 +4518,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3164:3:12" + "src": "3164:3:14" }, "nodeType": "YulFunctionCall", - "src": "3164:14:12" + "src": "3164:14:14" }, "variableNames": [ { "name": "updatedPos", "nodeType": "YulIdentifier", - "src": "3150:10:12" + "src": "3150:10:14" } ] } @@ -4557,13 +4539,13 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3058:6:12", + "src": "3058:6:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "3066:3:12", + "src": "3066:3:14", "type": "" } ], @@ -4571,31 +4553,31 @@ { "name": "updatedPos", "nodeType": "YulTypedName", - "src": "3074:10:12", + "src": "3074:10:14", "type": "" } ], - "src": "3005:179:12" + "src": "3005:179:14" }, { "body": { "nodeType": "YulBlock", - "src": "3265:38:12", + "src": "3265:38:14", "statements": [ { "nodeType": "YulAssignment", - "src": "3275:22:12", + "src": "3275:22:14", "value": { "arguments": [ { "name": "ptr", "nodeType": "YulIdentifier", - "src": "3287:3:12" + "src": "3287:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3292:4:12", + "src": "3292:4:14", "type": "", "value": "0x20" } @@ -4603,16 +4585,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3283:3:12" + "src": "3283:3:14" }, "nodeType": "YulFunctionCall", - "src": "3283:14:12" + "src": "3283:14:14" }, "variableNames": [ { "name": "next", "nodeType": "YulIdentifier", - "src": "3275:4:12" + "src": "3275:4:14" } ] } @@ -4624,7 +4606,7 @@ { "name": "ptr", "nodeType": "YulTypedName", - "src": "3252:3:12", + "src": "3252:3:14", "type": "" } ], @@ -4632,118 +4614,118 @@ { "name": "next", "nodeType": "YulTypedName", - "src": "3260:4:12", + "src": "3260:4:14", "type": "" } ], - "src": "3190:113:12" + "src": "3190:113:14" }, { "body": { "nodeType": "YulBlock", - "src": "3463:608:12", + "src": "3463:608:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3473:68:12", + "src": "3473:68:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3535:5:12" + "src": "3535:5:14" } ], "functionName": { "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", "nodeType": "YulIdentifier", - "src": "3487:47:12" + "src": "3487:47:14" }, "nodeType": "YulFunctionCall", - "src": "3487:54:12" + "src": "3487:54:14" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "3477:6:12", + "src": "3477:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3550:93:12", + "src": "3550:93:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3631:3:12" + "src": "3631:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "3636:6:12" + "src": "3636:6:14" } ], "functionName": { "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "3557:73:12" + "src": "3557:73:14" }, "nodeType": "YulFunctionCall", - "src": "3557:86:12" + "src": "3557:86:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3550:3:12" + "src": "3550:3:14" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "3652:71:12", + "src": "3652:71:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3717:5:12" + "src": "3717:5:14" } ], "functionName": { "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", "nodeType": "YulIdentifier", - "src": "3667:49:12" + "src": "3667:49:14" }, "nodeType": "YulFunctionCall", - "src": "3667:56:12" + "src": "3667:56:14" }, "variables": [ { "name": "baseRef", "nodeType": "YulTypedName", - "src": "3656:7:12", + "src": "3656:7:14", "type": "" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "3732:21:12", + "src": "3732:21:14", "value": { "name": "baseRef", "nodeType": "YulIdentifier", - "src": "3746:7:12" + "src": "3746:7:14" }, "variables": [ { "name": "srcPtr", "nodeType": "YulTypedName", - "src": "3736:6:12", + "src": "3736:6:14", "type": "" } ] @@ -4751,92 +4733,92 @@ { "body": { "nodeType": "YulBlock", - "src": "3822:224:12", + "src": "3822:224:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3836:34:12", + "src": "3836:34:14", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "3863:6:12" + "src": "3863:6:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3857:5:12" + "src": "3857:5:14" }, "nodeType": "YulFunctionCall", - "src": "3857:13:12" + "src": "3857:13:14" }, "variables": [ { "name": "elementValue0", "nodeType": "YulTypedName", - "src": "3840:13:12", + "src": "3840:13:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3883:70:12", + "src": "3883:70:14", "value": { "arguments": [ { "name": "elementValue0", "nodeType": "YulIdentifier", - "src": "3934:13:12" + "src": "3934:13:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "3949:3:12" + "src": "3949:3:14" } ], "functionName": { "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", "nodeType": "YulIdentifier", - "src": "3890:43:12" + "src": "3890:43:14" }, "nodeType": "YulFunctionCall", - "src": "3890:63:12" + "src": "3890:63:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3883:3:12" + "src": "3883:3:14" } ] }, { "nodeType": "YulAssignment", - "src": "3966:70:12", + "src": "3966:70:14", "value": { "arguments": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "4029:6:12" + "src": "4029:6:14" } ], "functionName": { "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", "nodeType": "YulIdentifier", - "src": "3976:52:12" + "src": "3976:52:14" }, "nodeType": "YulFunctionCall", - "src": "3976:60:12" + "src": "3976:60:14" }, "variableNames": [ { "name": "srcPtr", "nodeType": "YulIdentifier", - "src": "3966:6:12" + "src": "3966:6:14" } ] } @@ -4847,41 +4829,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "3784:1:12" + "src": "3784:1:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "3787:6:12" + "src": "3787:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "3781:2:12" + "src": "3781:2:14" }, "nodeType": "YulFunctionCall", - "src": "3781:13:12" + "src": "3781:13:14" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "3795:18:12", + "src": "3795:18:14", "statements": [ { "nodeType": "YulAssignment", - "src": "3797:14:12", + "src": "3797:14:14", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "3806:1:12" + "src": "3806:1:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3809:1:12", + "src": "3809:1:14", "type": "", "value": "1" } @@ -4889,16 +4871,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3802:3:12" + "src": "3802:3:14" }, "nodeType": "YulFunctionCall", - "src": "3802:9:12" + "src": "3802:9:14" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "3797:1:12" + "src": "3797:1:14" } ] } @@ -4906,15 +4888,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "3766:14:12", + "src": "3766:14:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3768:10:12", + "src": "3768:10:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3777:1:12", + "src": "3777:1:14", "type": "", "value": "0" }, @@ -4922,28 +4904,28 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "3772:1:12", + "src": "3772:1:14", "type": "" } ] } ] }, - "src": "3762:284:12" + "src": "3762:284:14" }, { "nodeType": "YulAssignment", - "src": "4055:10:12", + "src": "4055:10:14", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "4062:3:12" + "src": "4062:3:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "4055:3:12" + "src": "4055:3:14" } ] } @@ -4955,13 +4937,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3442:5:12", + "src": "3442:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "3449:3:12", + "src": "3449:3:14", "type": "" } ], @@ -4969,31 +4951,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "3458:3:12", + "src": "3458:3:14", "type": "" } ], - "src": "3339:732:12" + "src": "3339:732:14" }, { "body": { "nodeType": "YulBlock", - "src": "4225:225:12", + "src": "4225:225:14", "statements": [ { "nodeType": "YulAssignment", - "src": "4235:26:12", + "src": "4235:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4247:9:12" + "src": "4247:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4258:2:12", + "src": "4258:2:14", "type": "", "value": "32" } @@ -5001,16 +4983,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4243:3:12" + "src": "4243:3:14" }, "nodeType": "YulFunctionCall", - "src": "4243:18:12" + "src": "4243:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4235:4:12" + "src": "4235:4:14" } ] }, @@ -5022,12 +5004,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4282:9:12" + "src": "4282:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4293:1:12", + "src": "4293:1:14", "type": "", "value": "0" } @@ -5035,73 +5017,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4278:3:12" + "src": "4278:3:14" }, "nodeType": "YulFunctionCall", - "src": "4278:17:12" + "src": "4278:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4301:4:12" + "src": "4301:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4307:9:12" + "src": "4307:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4297:3:12" + "src": "4297:3:14" }, "nodeType": "YulFunctionCall", - "src": "4297:20:12" + "src": "4297:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4271:6:12" + "src": "4271:6:14" }, "nodeType": "YulFunctionCall", - "src": "4271:47:12" + "src": "4271:47:14" }, "nodeType": "YulExpressionStatement", - "src": "4271:47:12" + "src": "4271:47:14" }, { "nodeType": "YulAssignment", - "src": "4327:116:12", + "src": "4327:116:14", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4429:6:12" + "src": "4429:6:14" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "4438:4:12" + "src": "4438:4:14" } ], "functionName": { "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "4335:93:12" + "src": "4335:93:14" }, "nodeType": "YulFunctionCall", - "src": "4335:108:12" + "src": "4335:108:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4327:4:12" + "src": "4327:4:14" } ] } @@ -5113,13 +5095,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4197:9:12", + "src": "4197:9:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4209:6:12", + "src": "4209:6:14", "type": "" } ], @@ -5127,16 +5109,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4220:4:12", + "src": "4220:4:14", "type": "" } ], - "src": "4077:373:12" + "src": "4077:373:14" }, { "body": { "nodeType": "YulBlock", - "src": "4521:53:12", + "src": "4521:53:14", "statements": [ { "expression": { @@ -5144,35 +5126,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "4538:3:12" + "src": "4538:3:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4561:5:12" + "src": "4561:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "4543:17:12" + "src": "4543:17:14" }, "nodeType": "YulFunctionCall", - "src": "4543:24:12" + "src": "4543:24:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4531:6:12" + "src": "4531:6:14" }, "nodeType": "YulFunctionCall", - "src": "4531:37:12" + "src": "4531:37:14" }, "nodeType": "YulExpressionStatement", - "src": "4531:37:12" + "src": "4531:37:14" } ] }, @@ -5182,37 +5164,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4509:5:12", + "src": "4509:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "4516:3:12", + "src": "4516:3:14", "type": "" } ], - "src": "4456:118:12" + "src": "4456:118:14" }, { "body": { "nodeType": "YulBlock", - "src": "4678:124:12", + "src": "4678:124:14", "statements": [ { "nodeType": "YulAssignment", - "src": "4688:26:12", + "src": "4688:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4700:9:12" + "src": "4700:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4711:2:12", + "src": "4711:2:14", "type": "", "value": "32" } @@ -5220,16 +5202,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4696:3:12" + "src": "4696:3:14" }, "nodeType": "YulFunctionCall", - "src": "4696:18:12" + "src": "4696:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4688:4:12" + "src": "4688:4:14" } ] }, @@ -5239,19 +5221,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4768:6:12" + "src": "4768:6:14" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4781:9:12" + "src": "4781:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4792:1:12", + "src": "4792:1:14", "type": "", "value": "0" } @@ -5259,22 +5241,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4777:3:12" + "src": "4777:3:14" }, "nodeType": "YulFunctionCall", - "src": "4777:17:12" + "src": "4777:17:14" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "4724:43:12" + "src": "4724:43:14" }, "nodeType": "YulFunctionCall", - "src": "4724:71:12" + "src": "4724:71:14" }, "nodeType": "YulExpressionStatement", - "src": "4724:71:12" + "src": "4724:71:14" } ] }, @@ -5284,13 +5266,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4650:9:12", + "src": "4650:9:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4662:6:12", + "src": "4662:6:14", "type": "" } ], @@ -5298,64 +5280,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4673:4:12", + "src": "4673:4:14", "type": "" } ], - "src": "4580:222:12" + "src": "4580:222:14" }, { "body": { "nodeType": "YulBlock", - "src": "4853:32:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4863:16:12", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4874:5:12" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "4863:7:12" - } - ] - } - ] - }, - "name": "cleanup_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4835:5:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "4845:7:12", - "type": "" - } - ], - "src": "4808:77:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4934:79:12", + "src": "4851:79:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4991:16:12", + "src": "4908:16:14", "statements": [ { "expression": { @@ -5363,14 +5302,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "5000:1:12", + "src": "4917:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5003:1:12", + "src": "4920:1:14", "type": "", "value": "0" } @@ -5378,13 +5317,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4993:6:12" + "src": "4910:6:14" }, "nodeType": "YulFunctionCall", - "src": "4993:12:12" + "src": "4910:12:14" }, "nodeType": "YulExpressionStatement", - "src": "4993:12:12" + "src": "4910:12:14" } ] }, @@ -5395,2314 +5334,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4957:5:12" + "src": "4874:5:14" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4982:5:12" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "4964:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "4964:24:12" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "4954:2:12" - }, - "nodeType": "YulFunctionCall", - "src": "4954:35:12" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4947:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "4947:43:12" - }, - "nodeType": "YulIf", - "src": "4944:63:12" - } - ] - }, - "name": "validator_revert_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4927:5:12", - "type": "" - } - ], - "src": "4891:122:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5071:87:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5081:29:12", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5103:6:12" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "5090:12:12" - }, - "nodeType": "YulFunctionCall", - "src": "5090:20:12" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5081:5:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5146:5:12" - } - ], - "functionName": { - "name": "validator_revert_t_bytes32", - "nodeType": "YulIdentifier", - "src": "5119:26:12" - }, - "nodeType": "YulFunctionCall", - "src": "5119:33:12" - }, - "nodeType": "YulExpressionStatement", - "src": "5119:33:12" - } - ] - }, - "name": "abi_decode_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5049:6:12", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "5057:3:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5065:5:12", - "type": "" - } - ], - "src": "5019:139:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5230:263:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5276:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "5278:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "5278:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "5278:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5251:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5260:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5247:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "5247:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5272:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5243:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "5243:32:12" - }, - "nodeType": "YulIf", - "src": "5240:119:12" - }, - { - "nodeType": "YulBlock", - "src": "5369:117:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5384:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5398:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5388:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5413:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5448:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5459:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5444:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "5444:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5468:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "5423:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "5423:53:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5413:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5200:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5211:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5223:6:12", - "type": "" - } - ], - "src": "5164:329:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5564:53:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5581:3:12" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5604:5:12" - } - ], - "functionName": { - "name": "cleanup_t_bytes32", - "nodeType": "YulIdentifier", - "src": "5586:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "5586:24:12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5574:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "5574:37:12" - }, - "nodeType": "YulExpressionStatement", - "src": "5574:37:12" - } - ] - }, - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5552:5:12", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5559:3:12", - "type": "" - } - ], - "src": "5499:118:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5721:124:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "5731:26:12", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5743:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5754:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5739:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "5739:18:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "5731:4:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5811:6:12" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5824:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5835:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5820:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "5820:17:12" - } - ], - "functionName": { - "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", - "nodeType": "YulIdentifier", - "src": "5767:43:12" - }, - "nodeType": "YulFunctionCall", - "src": "5767:71:12" - }, - "nodeType": "YulExpressionStatement", - "src": "5767:71:12" - } - ] - }, - "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5693:9:12", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5705:6:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "5716:4:12", - "type": "" - } - ], - "src": "5623:222:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5891:76:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5945:16:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5954:1:12", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5957:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "5947:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "5947:12:12" - }, - "nodeType": "YulExpressionStatement", - "src": "5947:12:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5914:5:12" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "5936:5:12" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "5921:14:12" - }, - "nodeType": "YulFunctionCall", - "src": "5921:21:12" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "5911:2:12" - }, - "nodeType": "YulFunctionCall", - "src": "5911:32:12" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "5904:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "5904:40:12" - }, - "nodeType": "YulIf", - "src": "5901:60:12" - } - ] - }, - "name": "validator_revert_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5884:5:12", - "type": "" - } - ], - "src": "5851:116:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6022:84:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6032:29:12", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6054:6:12" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6041:12:12" - }, - "nodeType": "YulFunctionCall", - "src": "6041:20:12" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6032:5:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6094:5:12" - } - ], - "functionName": { - "name": "validator_revert_t_bool", - "nodeType": "YulIdentifier", - "src": "6070:23:12" - }, - "nodeType": "YulFunctionCall", - "src": "6070:30:12" - }, - "nodeType": "YulExpressionStatement", - "src": "6070:30:12" - } - ] - }, - "name": "abi_decode_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6000:6:12", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6008:3:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6016:5:12", - "type": "" - } - ], - "src": "5973:133:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6175:260:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6221:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "6223:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "6223:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "6223:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6196:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6205:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6192:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6192:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6217:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6188:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6188:32:12" - }, - "nodeType": "YulIf", - "src": "6185:119:12" - }, - { - "nodeType": "YulBlock", - "src": "6314:114:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6329:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6343:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6333:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6358:60:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6390:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6401:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6386:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6386:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6410:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_bool", - "nodeType": "YulIdentifier", - "src": "6368:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "6368:50:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6358:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6145:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6156:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6168:6:12", - "type": "" - } - ], - "src": "6112:323:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6524:391:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6570:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "6572:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "6572:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "6572:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6545:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6554:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6541:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6541:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6566:2:12", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6537:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6537:32:12" - }, - "nodeType": "YulIf", - "src": "6534:119:12" - }, - { - "nodeType": "YulBlock", - "src": "6663:117:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6678:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6692:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6682:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6707:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6742:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6753:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6738:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6738:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6762:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "6717:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "6717:53:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6707:6:12" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "6790:118:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6805:16:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6819:2:12", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6809:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6835:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6870:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6881:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6866:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "6866:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6890:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "6845:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "6845:53:12" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6835:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6486:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6497:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6509:6:12", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6517:6:12", - "type": "" - } - ], - "src": "6441:474:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6953:28:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6963:12:12", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6970:5:12" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "6963:3:12" - } - ] - } - ] - }, - "name": "identity", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6939:5:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "6949:3:12", - "type": "" - } - ], - "src": "6921:60:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7047:82:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7057:66:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7115:5:12" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "7097:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "7097:24:12" - } - ], - "functionName": { - "name": "identity", - "nodeType": "YulIdentifier", - "src": "7088:8:12" - }, - "nodeType": "YulFunctionCall", - "src": "7088:34:12" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "7070:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "7070:53:12" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "7057:9:12" - } - ] - } - ] - }, - "name": "convert_t_uint160_to_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7027:5:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "7037:9:12", - "type": "" - } - ], - "src": "6987:142:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7195:66:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7205:50:12", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7249:5:12" - } - ], - "functionName": { - "name": "convert_t_uint160_to_t_uint160", - "nodeType": "YulIdentifier", - "src": "7218:30:12" - }, - "nodeType": "YulFunctionCall", - "src": "7218:37:12" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "7205:9:12" - } - ] - } - ] - }, - "name": "convert_t_uint160_to_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7175:5:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "7185:9:12", - "type": "" - } - ], - "src": "7135:126:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7345:66:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7355:50:12", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7399:5:12" - } - ], - "functionName": { - "name": "convert_t_uint160_to_t_address", - "nodeType": "YulIdentifier", - "src": "7368:30:12" - }, - "nodeType": "YulFunctionCall", - "src": "7368:37:12" - }, - "variableNames": [ - { - "name": "converted", - "nodeType": "YulIdentifier", - "src": "7355:9:12" - } - ] - } - ] - }, - "name": "convert_t_contract$_IBEERC721_$1551_to_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7325:5:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "converted", - "nodeType": "YulTypedName", - "src": "7335:9:12", - "type": "" - } - ], - "src": "7267:144:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7500:84:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "7517:3:12" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "7571:5:12" - } - ], - "functionName": { - "name": "convert_t_contract$_IBEERC721_$1551_to_t_address", - "nodeType": "YulIdentifier", - "src": "7522:48:12" - }, - "nodeType": "YulFunctionCall", - "src": "7522:55:12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7510:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "7510:68:12" - }, - "nodeType": "YulExpressionStatement", - "src": "7510:68:12" - } - ] - }, - "name": "abi_encode_t_contract$_IBEERC721_$1551_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "7488:5:12", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "7495:3:12", - "type": "" - } - ], - "src": "7417:167:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7706:142:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7716:26:12", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7728:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7739:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7724:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "7724:18:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "7716:4:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "7814:6:12" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "7827:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7838:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7823:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "7823:17:12" - } - ], - "functionName": { - "name": "abi_encode_t_contract$_IBEERC721_$1551_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "7752:61:12" - }, - "nodeType": "YulFunctionCall", - "src": "7752:89:12" - }, - "nodeType": "YulExpressionStatement", - "src": "7752:89:12" - } - ] - }, - "name": "abi_encode_tuple_t_contract$_IBEERC721_$1551__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "7678:9:12", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "7690:6:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "7701:4:12", - "type": "" - } - ], - "src": "7590:258:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7943:28:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7960:1:12", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7963:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7953:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "7953:12:12" - }, - "nodeType": "YulExpressionStatement", - "src": "7953:12:12" - } - ] - }, - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulFunctionDefinition", - "src": "7854:117:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8066:28:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8083:1:12", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8086:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8076:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "8076:12:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8076:12:12" - } - ] - }, - "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", - "nodeType": "YulFunctionDefinition", - "src": "7977:117:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8189:28:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8206:1:12", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8209:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8199:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "8199:12:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8199:12:12" - } - ] - }, - "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", - "nodeType": "YulFunctionDefinition", - "src": "8100:117:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8330:478:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8379:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulIdentifier", - "src": "8381:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "8381:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8381:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8358:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8366:4:12", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8354:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8354:17:12" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8373:3:12" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "8350:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8350:27:12" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8343:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "8343:35:12" - }, - "nodeType": "YulIf", - "src": "8340:122:12" - }, - { - "nodeType": "YulAssignment", - "src": "8471:30:12", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8494:6:12" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8481:12:12" - }, - "nodeType": "YulFunctionCall", - "src": "8481:20:12" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8471:6:12" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8544:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", - "nodeType": "YulIdentifier", - "src": "8546:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "8546:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8546:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8516:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8524:18:12", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8513:2:12" - }, - "nodeType": "YulFunctionCall", - "src": "8513:30:12" - }, - "nodeType": "YulIf", - "src": "8510:117:12" - }, - { - "nodeType": "YulAssignment", - "src": "8636:29:12", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8652:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8660:4:12", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8648:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8648:17:12" - }, - "variableNames": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "8636:8:12" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8719:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", - "nodeType": "YulIdentifier", - "src": "8721:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "8721:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8721:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "arrayPos", - "nodeType": "YulIdentifier", - "src": "8684:8:12" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8698:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8706:4:12", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "mul", - "nodeType": "YulIdentifier", - "src": "8694:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8694:17:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8680:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8680:32:12" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8714:3:12" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8677:2:12" - }, - "nodeType": "YulFunctionCall", - "src": "8677:41:12" - }, - "nodeType": "YulIf", - "src": "8674:128:12" - } - ] - }, - "name": "abi_decode_t_array$_t_uint256_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8297:6:12", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8305:3:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "arrayPos", - "nodeType": "YulTypedName", - "src": "8313:8:12", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8323:6:12", - "type": "" - } - ], - "src": "8240:568:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8932:586:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8978:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "8980:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "8980:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "8980:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "8953:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "8962:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "8949:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8949:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8974:2:12", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "8945:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "8945:32:12" - }, - "nodeType": "YulIf", - "src": "8942:119:12" - }, - { - "nodeType": "YulBlock", - "src": "9071:117:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9086:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9100:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9090:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9115:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9150:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9161:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9146:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "9146:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9170:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "9125:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "9125:53:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9115:6:12" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "9198:313:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9213:46:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9244:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9255:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9240:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "9240:18:12" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9227:12:12" - }, - "nodeType": "YulFunctionCall", - "src": "9227:32:12" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9217:6:12", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9306:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "9308:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "9308:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "9308:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9278:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9286:18:12", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9275:2:12" - }, - "nodeType": "YulFunctionCall", - "src": "9275:30:12" - }, - "nodeType": "YulIf", - "src": "9272:117:12" - }, - { - "nodeType": "YulAssignment", - "src": "9403:98:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9473:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9484:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9469:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "9469:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9493:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_array$_t_uint256_$dyn_calldata_ptr", - "nodeType": "YulIdentifier", - "src": "9421:47:12" - }, - "nodeType": "YulFunctionCall", - "src": "9421:80:12" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9403:6:12" - }, - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9411:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_array$_t_uint256_$dyn_calldata_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "8886:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "8897:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "8909:6:12", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "8917:6:12", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "8925:6:12", - "type": "" - } - ], - "src": "8814:704:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9567:79:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9624:16:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9633:1:12", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9636:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "9626:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "9626:12:12" - }, - "nodeType": "YulExpressionStatement", - "src": "9626:12:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "9590:5:12" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "9615:5:12" + "src": "4899:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "9597:17:12" + "src": "4881:17:14" }, "nodeType": "YulFunctionCall", - "src": "9597:24:12" + "src": "4881:24:14" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "9587:2:12" + "src": "4871:2:14" }, "nodeType": "YulFunctionCall", - "src": "9587:35:12" + "src": "4871:35:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "9580:6:12" + "src": "4864:6:14" }, "nodeType": "YulFunctionCall", - "src": "9580:43:12" + "src": "4864:43:14" }, "nodeType": "YulIf", - "src": "9577:63:12" + "src": "4861:63:14" } ] }, @@ -7712,41 +5381,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "9560:5:12", + "src": "4844:5:14", "type": "" } ], - "src": "9524:122:12" + "src": "4808:122:14" }, { "body": { "nodeType": "YulBlock", - "src": "9704:87:12", + "src": "4988:87:14", "statements": [ { "nodeType": "YulAssignment", - "src": "9714:29:12", + "src": "4998:29:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "9736:6:12" + "src": "5020:6:14" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "9723:12:12" + "src": "5007:12:14" }, "nodeType": "YulFunctionCall", - "src": "9723:20:12" + "src": "5007:20:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "9714:5:12" + "src": "4998:5:14" } ] }, @@ -7756,19 +5425,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "9779:5:12" + "src": "5063:5:14" } ], "functionName": { "name": "validator_revert_t_uint256", "nodeType": "YulIdentifier", - "src": "9752:26:12" + "src": "5036:26:14" }, "nodeType": "YulFunctionCall", - "src": "9752:33:12" + "src": "5036:33:14" }, "nodeType": "YulExpressionStatement", - "src": "9752:33:12" + "src": "5036:33:14" } ] }, @@ -7778,13 +5447,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "9682:6:12", + "src": "4966:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "9690:3:12", + "src": "4974:3:14", "type": "" } ], @@ -7792,21 +5461,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "9698:5:12", + "src": "4982:5:14", "type": "" } ], - "src": "9652:139:12" + "src": "4936:139:14" }, { "body": { "nodeType": "YulBlock", - "src": "9880:391:12", + "src": "5147:263:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "9926:83:12", + "src": "5193:83:14", "statements": [ { "expression": { @@ -7814,13 +5483,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "9928:77:12" + "src": "5195:77:14" }, "nodeType": "YulFunctionCall", - "src": "9928:79:12" + "src": "5195:79:14" }, "nodeType": "YulExpressionStatement", - "src": "9928:79:12" + "src": "5195:79:14" } ] }, @@ -7831,693 +5500,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9901:7:12" + "src": "5168:7:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9910:9:12" + "src": "5177:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "9897:3:12" + "src": "5164:3:14" }, "nodeType": "YulFunctionCall", - "src": "9897:23:12" + "src": "5164:23:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9922:2:12", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9893:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "9893:32:12" - }, - "nodeType": "YulIf", - "src": "9890:119:12" - }, - { - "nodeType": "YulBlock", - "src": "10019:117:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10034:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10048:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10038:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10063:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10098:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10109:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10094:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10094:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10118:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_bytes32", - "nodeType": "YulIdentifier", - "src": "10073:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "10073:53:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10063:6:12" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "10146:118:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10161:16:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10175:2:12", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10165:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10191:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10226:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10237:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10222:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10222:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10246:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "10201:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "10201:53:12" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10191:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes32t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9842:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9853:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9865:6:12", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9873:6:12", - "type": "" - } - ], - "src": "9797:474:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10342:53:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "10359:3:12" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "10382:5:12" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "10364:17:12" - }, - "nodeType": "YulFunctionCall", - "src": "10364:24:12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10352:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "10352:37:12" - }, - "nodeType": "YulExpressionStatement", - "src": "10352:37:12" - } - ] - }, - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "10330:5:12", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "10337:3:12", - "type": "" - } - ], - "src": "10277:118:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10499:124:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10509:26:12", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10521:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10532:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10517:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10517:18:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "10509:4:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10589:6:12" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10602:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10613:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10598:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10598:17:12" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "10545:43:12" - }, - "nodeType": "YulFunctionCall", - "src": "10545:71:12" - }, - "nodeType": "YulExpressionStatement", - "src": "10545:71:12" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10471:9:12", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10483:6:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "10494:4:12", - "type": "" - } - ], - "src": "10401:222:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10712:391:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10758:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "10760:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "10760:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "10760:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10733:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10742:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10729:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10729:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10754:2:12", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10725:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10725:32:12" - }, - "nodeType": "YulIf", - "src": "10722:119:12" - }, - { - "nodeType": "YulBlock", - "src": "10851:117:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10866:15:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10880:1:12", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10870:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10895:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10930:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10941:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10926:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "10926:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10950:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "10905:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "10905:53:12" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10895:6:12" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "10978:118:12", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10993:16:12", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11007:2:12", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10997:6:12", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "11023:63:12", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11058:9:12" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "11069:6:12" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11054:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "11054:22:12" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11078:7:12" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "11033:20:12" - }, - "nodeType": "YulFunctionCall", - "src": "11033:53:12" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "11023:6:12" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10674:9:12", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10685:7:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10697:6:12", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10705:6:12", - "type": "" - } - ], - "src": "10629:474:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11175:263:12", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "11221:83:12", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "11223:77:12" - }, - "nodeType": "YulFunctionCall", - "src": "11223:79:12" - }, - "nodeType": "YulExpressionStatement", - "src": "11223:79:12" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "11196:7:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11205:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11192:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "11192:23:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11217:2:12", + "src": "5189:2:14", "type": "", "value": "32" } @@ -8525,25 +5527,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "11188:3:12" + "src": "5160:3:14" }, "nodeType": "YulFunctionCall", - "src": "11188:32:12" + "src": "5160:32:14" }, "nodeType": "YulIf", - "src": "11185:119:12" + "src": "5157:119:14" }, { "nodeType": "YulBlock", - "src": "11314:117:12", + "src": "5286:117:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11329:15:12", + "src": "5301:15:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11343:1:12", + "src": "5315:1:14", "type": "", "value": "0" }, @@ -8551,14 +5553,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11333:6:12", + "src": "5305:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11358:63:12", + "src": "5330:63:14", "value": { "arguments": [ { @@ -8566,41 +5568,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11393:9:12" + "src": "5365:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11404:6:12" + "src": "5376:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11389:3:12" + "src": "5361:3:14" }, "nodeType": "YulFunctionCall", - "src": "11389:22:12" + "src": "5361:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11413:7:12" + "src": "5385:7:14" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "11368:20:12" + "src": "5340:20:14" }, "nodeType": "YulFunctionCall", - "src": "11368:53:12" + "src": "5340:53:14" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "11358:6:12" + "src": "5330:6:14" } ] } @@ -8614,13 +5616,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "11145:9:12", + "src": "5117:9:14", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "11156:7:12", + "src": "5128:7:14", "type": "" } ], @@ -8628,16 +5630,1576 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "11168:6:12", + "src": "5140:6:14", "type": "" } ], - "src": "11109:329:12" + "src": "5081:329:14" }, { "body": { "nodeType": "YulBlock", - "src": "11472:152:12", + "src": "5461:32:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5471:16:14", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5482:5:14" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "5471:7:14" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5443:5:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "5453:7:14", + "type": "" + } + ], + "src": "5416:77:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5542:79:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "5599:16:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5608:1:14", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5611:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5601:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "5601:12:14" + }, + "nodeType": "YulExpressionStatement", + "src": "5601:12:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5565:5:14" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5590:5:14" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "5572:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "5572:24:14" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "5562:2:14" + }, + "nodeType": "YulFunctionCall", + "src": "5562:35:14" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "5555:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "5555:43:14" + }, + "nodeType": "YulIf", + "src": "5552:63:14" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5535:5:14", + "type": "" + } + ], + "src": "5499:122:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5679:87:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5689:29:14", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "5711:6:14" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5698:12:14" + }, + "nodeType": "YulFunctionCall", + "src": "5698:20:14" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5689:5:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5754:5:14" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nodeType": "YulIdentifier", + "src": "5727:26:14" + }, + "nodeType": "YulFunctionCall", + "src": "5727:33:14" + }, + "nodeType": "YulExpressionStatement", + "src": "5727:33:14" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "5657:6:14", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5665:3:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5673:5:14", + "type": "" + } + ], + "src": "5627:139:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5838:263:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "5884:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "5886:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "5886:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "5886:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5859:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5868:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5855:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "5855:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5880:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "5851:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "5851:32:14" + }, + "nodeType": "YulIf", + "src": "5848:119:14" + }, + { + "nodeType": "YulBlock", + "src": "5977:117:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "5992:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6006:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "5996:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6021:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6056:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "6067:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6052:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6052:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "6076:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "6031:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "6031:53:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6021:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5808:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "5819:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5831:6:14", + "type": "" + } + ], + "src": "5772:329:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6172:53:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6189:3:14" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6212:5:14" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nodeType": "YulIdentifier", + "src": "6194:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "6194:24:14" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6182:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "6182:37:14" + }, + "nodeType": "YulExpressionStatement", + "src": "6182:37:14" + } + ] + }, + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6160:5:14", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "6167:3:14", + "type": "" + } + ], + "src": "6107:118:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6329:124:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6339:26:14", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6351:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6362:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6347:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6347:18:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6339:4:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6419:6:14" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6432:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6443:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6428:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6428:17:14" + } + ], + "functionName": { + "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", + "nodeType": "YulIdentifier", + "src": "6375:43:14" + }, + "nodeType": "YulFunctionCall", + "src": "6375:71:14" + }, + "nodeType": "YulExpressionStatement", + "src": "6375:71:14" + } + ] + }, + "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6301:9:14", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6313:6:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6324:4:14", + "type": "" + } + ], + "src": "6231:222:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6499:76:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "6553:16:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6562:1:14", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6565:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6555:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "6555:12:14" + }, + "nodeType": "YulExpressionStatement", + "src": "6555:12:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6522:5:14" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6544:5:14" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "6529:14:14" + }, + "nodeType": "YulFunctionCall", + "src": "6529:21:14" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "6519:2:14" + }, + "nodeType": "YulFunctionCall", + "src": "6519:32:14" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "6512:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "6512:40:14" + }, + "nodeType": "YulIf", + "src": "6509:60:14" + } + ] + }, + "name": "validator_revert_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6492:5:14", + "type": "" + } + ], + "src": "6459:116:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6630:84:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6640:29:14", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "6662:6:14" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "6649:12:14" + }, + "nodeType": "YulFunctionCall", + "src": "6649:20:14" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6640:5:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6702:5:14" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nodeType": "YulIdentifier", + "src": "6678:23:14" + }, + "nodeType": "YulFunctionCall", + "src": "6678:30:14" + }, + "nodeType": "YulExpressionStatement", + "src": "6678:30:14" + } + ] + }, + "name": "abi_decode_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "6608:6:14", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6616:3:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6624:5:14", + "type": "" + } + ], + "src": "6581:133:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6783:260:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "6829:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "6831:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "6831:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "6831:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "6804:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6813:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6800:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6800:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6825:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "6796:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6796:32:14" + }, + "nodeType": "YulIf", + "src": "6793:119:14" + }, + { + "nodeType": "YulBlock", + "src": "6922:114:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "6937:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6951:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "6941:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6966:60:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6998:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7009:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6994:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "6994:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7018:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nodeType": "YulIdentifier", + "src": "6976:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "6976:50:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6966:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6753:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "6764:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6776:6:14", + "type": "" + } + ], + "src": "6720:323:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7132:391:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7178:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "7180:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "7180:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "7180:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7153:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7162:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7149:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "7149:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7174:2:14", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7145:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "7145:32:14" + }, + "nodeType": "YulIf", + "src": "7142:119:14" + }, + { + "nodeType": "YulBlock", + "src": "7271:117:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7286:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7300:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "7290:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "7315:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7350:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7361:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7346:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "7346:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7370:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "7325:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "7325:53:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7315:6:14" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "7398:118:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7413:16:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7427:2:14", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "7417:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "7443:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7478:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7489:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7474:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "7474:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7498:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "7453:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "7453:53:14" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7443:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7094:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "7105:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7117:6:14", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "7125:6:14", + "type": "" + } + ], + "src": "7049:474:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7561:28:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7571:12:14", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7578:5:14" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "7571:3:14" + } + ] + } + ] + }, + "name": "identity", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7547:5:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "7557:3:14", + "type": "" + } + ], + "src": "7529:60:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7655:82:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7665:66:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7723:5:14" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "7705:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "7705:24:14" + } + ], + "functionName": { + "name": "identity", + "nodeType": "YulIdentifier", + "src": "7696:8:14" + }, + "nodeType": "YulFunctionCall", + "src": "7696:34:14" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "7678:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "7678:53:14" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "7665:9:14" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7635:5:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "7645:9:14", + "type": "" + } + ], + "src": "7595:142:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7803:66:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7813:50:14", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7857:5:14" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_uint160", + "nodeType": "YulIdentifier", + "src": "7826:30:14" + }, + "nodeType": "YulFunctionCall", + "src": "7826:37:14" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "7813:9:14" + } + ] + } + ] + }, + "name": "convert_t_uint160_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7783:5:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "7793:9:14", + "type": "" + } + ], + "src": "7743:126:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7953:66:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7963:50:14", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8007:5:14" + } + ], + "functionName": { + "name": "convert_t_uint160_to_t_address", + "nodeType": "YulIdentifier", + "src": "7976:30:14" + }, + "nodeType": "YulFunctionCall", + "src": "7976:37:14" + }, + "variableNames": [ + { + "name": "converted", + "nodeType": "YulIdentifier", + "src": "7963:9:14" + } + ] + } + ] + }, + "name": "convert_t_contract$_IBEERC721_$2569_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7933:5:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "converted", + "nodeType": "YulTypedName", + "src": "7943:9:14", + "type": "" + } + ], + "src": "7875:144:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8108:84:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8125:3:14" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8179:5:14" + } + ], + "functionName": { + "name": "convert_t_contract$_IBEERC721_$2569_to_t_address", + "nodeType": "YulIdentifier", + "src": "8130:48:14" + }, + "nodeType": "YulFunctionCall", + "src": "8130:55:14" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8118:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "8118:68:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8118:68:14" + } + ] + }, + "name": "abi_encode_t_contract$_IBEERC721_$2569_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "8096:5:14", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "8103:3:14", + "type": "" + } + ], + "src": "8025:167:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8314:142:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8324:26:14", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8336:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8347:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8332:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "8332:18:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8324:4:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8422:6:14" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8435:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8446:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8431:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "8431:17:14" + } + ], + "functionName": { + "name": "abi_encode_t_contract$_IBEERC721_$2569_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "8360:61:14" + }, + "nodeType": "YulFunctionCall", + "src": "8360:89:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8360:89:14" + } + ] + }, + "name": "abi_encode_tuple_t_contract$_IBEERC721_$2569__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8286:9:14", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8298:6:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8309:4:14", + "type": "" + } + ], + "src": "8198:258:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8551:28:14", "statements": [ { "expression": { @@ -8645,14 +7207,1434 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11489:1:12", + "src": "8568:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11492:77:12", + "src": "8571:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8561:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "8561:12:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8561:12:14" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulFunctionDefinition", + "src": "8462:117:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8674:28:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8691:1:14", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8694:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8684:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "8684:12:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8684:12:14" + } + ] + }, + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nodeType": "YulFunctionDefinition", + "src": "8585:117:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8797:28:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8814:1:14", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8817:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8807:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "8807:12:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8807:12:14" + } + ] + }, + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nodeType": "YulFunctionDefinition", + "src": "8708:117:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8938:478:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "8987:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulIdentifier", + "src": "8989:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "8989:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "8989:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "8966:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8974:4:14", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8962:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "8962:17:14" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "8981:3:14" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "8958:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "8958:27:14" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "8951:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "8951:35:14" + }, + "nodeType": "YulIf", + "src": "8948:122:14" + }, + { + "nodeType": "YulAssignment", + "src": "9079:30:14", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9102:6:14" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9089:12:14" + }, + "nodeType": "YulFunctionCall", + "src": "9089:20:14" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9079:6:14" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9152:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490", + "nodeType": "YulIdentifier", + "src": "9154:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "9154:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "9154:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9124:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9132:18:14", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9121:2:14" + }, + "nodeType": "YulFunctionCall", + "src": "9121:30:14" + }, + "nodeType": "YulIf", + "src": "9118:117:14" + }, + { + "nodeType": "YulAssignment", + "src": "9244:29:14", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9260:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9268:4:14", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9256:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9256:17:14" + }, + "variableNames": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "9244:8:14" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9327:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", + "nodeType": "YulIdentifier", + "src": "9329:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "9329:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "9329:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "arrayPos", + "nodeType": "YulIdentifier", + "src": "9292:8:14" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9306:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9314:4:14", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "9302:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9302:17:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9288:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9288:32:14" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9322:3:14" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9285:2:14" + }, + "nodeType": "YulFunctionCall", + "src": "9285:41:14" + }, + "nodeType": "YulIf", + "src": "9282:128:14" + } + ] + }, + "name": "abi_decode_t_array$_t_uint256_$dyn_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "8905:6:14", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "8913:3:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "arrayPos", + "nodeType": "YulTypedName", + "src": "8921:8:14", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8931:6:14", + "type": "" + } + ], + "src": "8848:568:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9540:586:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9586:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "9588:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "9588:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "9588:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "9561:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9570:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9557:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9557:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9582:2:14", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "9553:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9553:32:14" + }, + "nodeType": "YulIf", + "src": "9550:119:14" + }, + { + "nodeType": "YulBlock", + "src": "9679:117:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9694:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9708:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "9698:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9723:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9758:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9769:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9754:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9754:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "9778:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "9733:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "9733:53:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9723:6:14" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9806:313:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9821:46:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9852:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9863:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9848:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "9848:18:14" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9835:12:14" + }, + "nodeType": "YulFunctionCall", + "src": "9835:32:14" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "9825:6:14", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9914:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "9916:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "9916:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "9916:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9886:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9894:18:14", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9883:2:14" + }, + "nodeType": "YulFunctionCall", + "src": "9883:30:14" + }, + "nodeType": "YulIf", + "src": "9880:117:14" + }, + { + "nodeType": "YulAssignment", + "src": "10011:98:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10081:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10092:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10077:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10077:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10101:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_array$_t_uint256_$dyn_calldata_ptr", + "nodeType": "YulIdentifier", + "src": "10029:47:14" + }, + "nodeType": "YulFunctionCall", + "src": "10029:80:14" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "10011:6:14" + }, + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "10019:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_array$_t_uint256_$dyn_calldata_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9494:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "9505:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9517:6:14", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "9525:6:14", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "9533:6:14", + "type": "" + } + ], + "src": "9422:704:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10215:391:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10261:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "10263:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "10263:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "10263:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10236:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10245:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10232:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10232:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10257:2:14", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "10228:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10228:32:14" + }, + "nodeType": "YulIf", + "src": "10225:119:14" + }, + { + "nodeType": "YulBlock", + "src": "10354:117:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10369:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10383:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10373:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10398:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10433:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10444:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10429:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10429:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10453:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nodeType": "YulIdentifier", + "src": "10408:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "10408:53:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10398:6:14" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "10481:118:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10496:16:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10510:2:14", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10500:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10526:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10561:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10572:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10557:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10557:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10581:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "10536:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "10536:53:14" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "10526:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10177:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "10188:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10200:6:14", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "10208:6:14", + "type": "" + } + ], + "src": "10132:474:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10677:53:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10694:3:14" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10717:5:14" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "10699:17:14" + }, + "nodeType": "YulFunctionCall", + "src": "10699:24:14" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10687:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "10687:37:14" + }, + "nodeType": "YulExpressionStatement", + "src": "10687:37:14" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10665:5:14", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10672:3:14", + "type": "" + } + ], + "src": "10612:118:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10834:124:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10844:26:14", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10856:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10867:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10852:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10852:18:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10844:4:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10924:6:14" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10937:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10948:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10933:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "10933:17:14" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "10880:43:14" + }, + "nodeType": "YulFunctionCall", + "src": "10880:71:14" + }, + "nodeType": "YulExpressionStatement", + "src": "10880:71:14" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10806:9:14", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10818:6:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "10829:4:14", + "type": "" + } + ], + "src": "10736:222:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11047:391:14", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "11093:83:14", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "11095:77:14" + }, + "nodeType": "YulFunctionCall", + "src": "11095:79:14" + }, + "nodeType": "YulExpressionStatement", + "src": "11095:79:14" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11068:7:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11077:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "11064:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "11064:23:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11089:2:14", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "11060:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "11060:32:14" + }, + "nodeType": "YulIf", + "src": "11057:119:14" + }, + { + "nodeType": "YulBlock", + "src": "11186:117:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11201:15:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11215:1:14", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11205:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11230:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11265:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11276:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11261:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "11261:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11285:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "11240:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "11240:53:14" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11230:6:14" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "11313:118:14", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11328:16:14", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11342:2:14", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11332:6:14", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11358:63:14", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11393:9:14" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11404:6:14" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11389:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "11389:22:14" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11413:7:14" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "11368:20:14" + }, + "nodeType": "YulFunctionCall", + "src": "11368:53:14" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "11358:6:14" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11009:9:14", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "11020:7:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11032:6:14", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "11040:6:14", + "type": "" + } + ], + "src": "10964:474:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11472:152:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11489:1:14", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11492:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -8660,13 +8642,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11482:6:12" + "src": "11482:6:14" }, "nodeType": "YulFunctionCall", - "src": "11482:88:12" + "src": "11482:88:14" }, "nodeType": "YulExpressionStatement", - "src": "11482:88:12" + "src": "11482:88:14" }, { "expression": { @@ -8674,14 +8656,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11586:1:12", + "src": "11586:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11589:4:12", + "src": "11589:4:14", "type": "", "value": "0x41" } @@ -8689,13 +8671,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11579:6:12" + "src": "11579:6:14" }, "nodeType": "YulFunctionCall", - "src": "11579:15:12" + "src": "11579:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11579:15:12" + "src": "11579:15:14" }, { "expression": { @@ -8703,14 +8685,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11610:1:12", + "src": "11610:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11613:4:12", + "src": "11613:4:14", "type": "", "value": "0x24" } @@ -8718,24 +8700,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "11603:6:12" + "src": "11603:6:14" }, "nodeType": "YulFunctionCall", - "src": "11603:15:12" + "src": "11603:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11603:15:12" + "src": "11603:15:14" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "11444:180:12" + "src": "11444:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "11658:152:12", + "src": "11658:152:14", "statements": [ { "expression": { @@ -8743,14 +8725,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11675:1:12", + "src": "11675:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11678:77:12", + "src": "11678:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -8758,13 +8740,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11668:6:12" + "src": "11668:6:14" }, "nodeType": "YulFunctionCall", - "src": "11668:88:12" + "src": "11668:88:14" }, "nodeType": "YulExpressionStatement", - "src": "11668:88:12" + "src": "11668:88:14" }, { "expression": { @@ -8772,14 +8754,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11772:1:12", + "src": "11772:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11775:4:12", + "src": "11775:4:14", "type": "", "value": "0x32" } @@ -8787,13 +8769,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11765:6:12" + "src": "11765:6:14" }, "nodeType": "YulFunctionCall", - "src": "11765:15:12" + "src": "11765:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11765:15:12" + "src": "11765:15:14" }, { "expression": { @@ -8801,14 +8783,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11796:1:12", + "src": "11796:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11799:4:12", + "src": "11799:4:14", "type": "", "value": "0x24" } @@ -8816,24 +8798,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "11789:6:12" + "src": "11789:6:14" }, "nodeType": "YulFunctionCall", - "src": "11789:15:12" + "src": "11789:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11789:15:12" + "src": "11789:15:14" } ] }, "name": "panic_error_0x32", "nodeType": "YulFunctionDefinition", - "src": "11630:180:12" + "src": "11630:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "11844:152:12", + "src": "11844:152:14", "statements": [ { "expression": { @@ -8841,14 +8823,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11861:1:12", + "src": "11861:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11864:77:12", + "src": "11864:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -8856,13 +8838,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11854:6:12" + "src": "11854:6:14" }, "nodeType": "YulFunctionCall", - "src": "11854:88:12" + "src": "11854:88:14" }, "nodeType": "YulExpressionStatement", - "src": "11854:88:12" + "src": "11854:88:14" }, { "expression": { @@ -8870,14 +8852,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11958:1:12", + "src": "11958:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11961:4:12", + "src": "11961:4:14", "type": "", "value": "0x11" } @@ -8885,13 +8867,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11951:6:12" + "src": "11951:6:14" }, "nodeType": "YulFunctionCall", - "src": "11951:15:12" + "src": "11951:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11951:15:12" + "src": "11951:15:14" }, { "expression": { @@ -8899,14 +8881,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "11982:1:12", + "src": "11982:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11985:4:12", + "src": "11985:4:14", "type": "", "value": "0x24" } @@ -8914,56 +8896,56 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "11975:6:12" + "src": "11975:6:14" }, "nodeType": "YulFunctionCall", - "src": "11975:15:12" + "src": "11975:15:14" }, "nodeType": "YulExpressionStatement", - "src": "11975:15:12" + "src": "11975:15:14" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "11816:180:12" + "src": "11816:180:14" }, { "body": { "nodeType": "YulBlock", - "src": "12045:190:12", + "src": "12045:190:14", "statements": [ { "nodeType": "YulAssignment", - "src": "12055:33:12", + "src": "12055:33:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "12082:5:12" + "src": "12082:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "12064:17:12" + "src": "12064:17:14" }, "nodeType": "YulFunctionCall", - "src": "12064:24:12" + "src": "12064:24:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "12055:5:12" + "src": "12055:5:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "12178:22:12", + "src": "12178:22:14", "statements": [ { "expression": { @@ -8971,13 +8953,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "12180:16:12" + "src": "12180:16:14" }, "nodeType": "YulFunctionCall", - "src": "12180:18:12" + "src": "12180:18:14" }, "nodeType": "YulExpressionStatement", - "src": "12180:18:12" + "src": "12180:18:14" } ] }, @@ -8986,12 +8968,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "12103:5:12" + "src": "12103:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12110:66:12", + "src": "12110:66:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" } @@ -8999,28 +8981,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "12100:2:12" + "src": "12100:2:14" }, "nodeType": "YulFunctionCall", - "src": "12100:77:12" + "src": "12100:77:14" }, "nodeType": "YulIf", - "src": "12097:103:12" + "src": "12097:103:14" }, { "nodeType": "YulAssignment", - "src": "12209:20:12", + "src": "12209:20:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "12220:5:12" + "src": "12220:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12227:1:12", + "src": "12227:1:14", "type": "", "value": "1" } @@ -9028,16 +9010,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12216:3:12" + "src": "12216:3:14" }, "nodeType": "YulFunctionCall", - "src": "12216:13:12" + "src": "12216:13:14" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "12209:3:12" + "src": "12209:3:14" } ] } @@ -9049,7 +9031,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "12031:5:12", + "src": "12031:5:14", "type": "" } ], @@ -9057,16 +9039,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "12041:3:12", + "src": "12041:3:14", "type": "" } ], - "src": "12002:233:12" + "src": "12002:233:14" }, { "body": { "nodeType": "YulBlock", - "src": "12337:73:12", + "src": "12337:73:14", "statements": [ { "expression": { @@ -9074,39 +9056,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "12354:3:12" + "src": "12354:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "12359:6:12" + "src": "12359:6:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12347:6:12" + "src": "12347:6:14" }, "nodeType": "YulFunctionCall", - "src": "12347:19:12" + "src": "12347:19:14" }, "nodeType": "YulExpressionStatement", - "src": "12347:19:12" + "src": "12347:19:14" }, { "nodeType": "YulAssignment", - "src": "12375:29:12", + "src": "12375:29:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "12394:3:12" + "src": "12394:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12399:4:12", + "src": "12399:4:14", "type": "", "value": "0x20" } @@ -9114,16 +9096,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12390:3:12" + "src": "12390:3:14" }, "nodeType": "YulFunctionCall", - "src": "12390:14:12" + "src": "12390:14:14" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "12375:11:12" + "src": "12375:11:14" } ] } @@ -9135,13 +9117,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "12309:3:12", + "src": "12309:3:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "12314:6:12", + "src": "12314:6:14", "type": "" } ], @@ -9149,16 +9131,16 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "12325:11:12", + "src": "12325:11:14", "type": "" } ], - "src": "12241:169:12" + "src": "12241:169:14" }, { "body": { "nodeType": "YulBlock", - "src": "12522:63:12", + "src": "12522:71:14", "statements": [ { "expression": { @@ -9168,12 +9150,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "12544:6:12" + "src": "12544:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12552:1:12", + "src": "12552:1:14", "type": "", "value": "0" } @@ -9181,716 +9163,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12540:3:12" + "src": "12540:3:14" }, "nodeType": "YulFunctionCall", - "src": "12540:14:12" - }, - { - "hexValue": "4f70656e207374617475732069732073616d65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "12556:21:12", - "type": "", - "value": "Open status is same" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12533:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "12533:45:12" - }, - "nodeType": "YulExpressionStatement", - "src": "12533:45:12" - } - ] - }, - "name": "store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "12514:6:12", - "type": "" - } - ], - "src": "12416:169:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12737:220:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12747:74:12", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12813:3:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12818:2:12", - "type": "", - "value": "19" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12754:58:12" - }, - "nodeType": "YulFunctionCall", - "src": "12754:67:12" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12747:3:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12919:3:12" - } - ], - "functionName": { - "name": "store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d", - "nodeType": "YulIdentifier", - "src": "12830:88:12" - }, - "nodeType": "YulFunctionCall", - "src": "12830:93:12" - }, - "nodeType": "YulExpressionStatement", - "src": "12830:93:12" - }, - { - "nodeType": "YulAssignment", - "src": "12932:19:12", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12943:3:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12948:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12939:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "12939:12:12" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "12932:3:12" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12725:3:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12733:3:12", - "type": "" - } - ], - "src": "12591:366:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13134:248:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13144:26:12", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13156:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13167:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13152:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13152:18:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13144:4:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13191:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13202:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13187:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13187:17:12" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13210:4:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13216:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13206:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13206:20:12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13180:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "13180:47:12" - }, - "nodeType": "YulExpressionStatement", - "src": "13180:47:12" - }, - { - "nodeType": "YulAssignment", - "src": "13236:139:12", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13370:4:12" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "13244:124:12" - }, - "nodeType": "YulFunctionCall", - "src": "13244:131:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13236:4:12" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13114:9:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13129:4:12", - "type": "" - } - ], - "src": "12963:419:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13494:128:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "13516:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13524:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13512:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13512:14:12" - }, - { - "hexValue": "416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13528:34:12", - "type": "", - "value": "AccessControl: can only renounce" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13505:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "13505:58:12" - }, - "nodeType": "YulExpressionStatement", - "src": "13505:58:12" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "13584:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13592:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13580:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13580:15:12" - }, - { - "hexValue": "20726f6c657320666f722073656c66", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13597:17:12", - "type": "", - "value": " roles for self" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13573:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "13573:42:12" - }, - "nodeType": "YulExpressionStatement", - "src": "13573:42:12" - } - ] - }, - "name": "store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "13486:6:12", - "type": "" - } - ], - "src": "13388:234:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13774:220:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13784:74:12", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13850:3:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13855:2:12", - "type": "", - "value": "47" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "13791:58:12" - }, - "nodeType": "YulFunctionCall", - "src": "13791:67:12" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13784:3:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13956:3:12" - } - ], - "functionName": { - "name": "store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b", - "nodeType": "YulIdentifier", - "src": "13867:88:12" - }, - "nodeType": "YulFunctionCall", - "src": "13867:93:12" - }, - "nodeType": "YulExpressionStatement", - "src": "13867:93:12" - }, - { - "nodeType": "YulAssignment", - "src": "13969:19:12", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13980:3:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13985:2:12", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13976:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "13976:12:12" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13969:3:12" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "13762:3:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "13770:3:12", - "type": "" - } - ], - "src": "13628:366:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14171:248:12", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14181:26:12", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14193:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14204:2:12", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14189:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "14189:18:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14181:4:12" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14228:9:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14239:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14224:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "14224:17:12" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14247:4:12" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14253:9:12" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14243:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "14243:20:12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14217:6:12" - }, - "nodeType": "YulFunctionCall", - "src": "14217:47:12" - }, - "nodeType": "YulExpressionStatement", - "src": "14217:47:12" - }, - { - "nodeType": "YulAssignment", - "src": "14273:139:12", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14407:4:12" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "14281:124:12" - }, - "nodeType": "YulFunctionCall", - "src": "14281:131:12" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14273:4:12" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14151:9:12", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14166:4:12", - "type": "" - } - ], - "src": "14000:419:12" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14531:71:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "14553:6:12" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14561:1:12", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14549:3:12" - }, - "nodeType": "YulFunctionCall", - "src": "14549:14:12" + "src": "12540:14:14" }, { "hexValue": "4e4654206469737472696275746f72206973206e6f74206f70656e", "kind": "string", "nodeType": "YulLiteral", - "src": "14565:29:12", + "src": "12556:29:14", "type": "", "value": "NFT distributor is not open" } @@ -9898,13 +9180,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14542:6:12" + "src": "12533:6:14" }, "nodeType": "YulFunctionCall", - "src": "14542:53:12" + "src": "12533:53:14" }, "nodeType": "YulExpressionStatement", - "src": "14542:53:12" + "src": "12533:53:14" } ] }, @@ -9914,31 +9196,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "14523:6:12", + "src": "12514:6:14", "type": "" } ], - "src": "14425:177:12" + "src": "12416:177:14" }, { "body": { "nodeType": "YulBlock", - "src": "14754:220:12", + "src": "12745:220:14", "statements": [ { "nodeType": "YulAssignment", - "src": "14764:74:12", + "src": "12755:74:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14830:3:12" + "src": "12821:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14835:2:12", + "src": "12826:2:14", "type": "", "value": "27" } @@ -9946,16 +9228,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "14771:58:12" + "src": "12762:58:14" }, "nodeType": "YulFunctionCall", - "src": "14771:67:12" + "src": "12762:67:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14764:3:12" + "src": "12755:3:14" } ] }, @@ -9965,34 +9247,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14936:3:12" + "src": "12927:3:14" } ], "functionName": { "name": "store_literal_in_memory_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f", "nodeType": "YulIdentifier", - "src": "14847:88:12" + "src": "12838:88:14" }, "nodeType": "YulFunctionCall", - "src": "14847:93:12" + "src": "12838:93:14" }, "nodeType": "YulExpressionStatement", - "src": "14847:93:12" + "src": "12838:93:14" }, { "nodeType": "YulAssignment", - "src": "14949:19:12", + "src": "12940:19:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14960:3:12" + "src": "12951:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14965:2:12", + "src": "12956:2:14", "type": "", "value": "32" } @@ -10000,16 +9282,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14956:3:12" + "src": "12947:3:14" }, "nodeType": "YulFunctionCall", - "src": "14956:12:12" + "src": "12947:12:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "14949:3:12" + "src": "12940:3:14" } ] } @@ -10021,7 +9303,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "14742:3:12", + "src": "12733:3:14", "type": "" } ], @@ -10029,31 +9311,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "14750:3:12", + "src": "12741:3:14", "type": "" } ], - "src": "14608:366:12" + "src": "12599:366:14" }, { "body": { "nodeType": "YulBlock", - "src": "15151:248:12", + "src": "13142:248:14", "statements": [ { "nodeType": "YulAssignment", - "src": "15161:26:12", + "src": "13152:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15173:9:12" + "src": "13164:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15184:2:12", + "src": "13175:2:14", "type": "", "value": "32" } @@ -10061,16 +9343,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15169:3:12" + "src": "13160:3:14" }, "nodeType": "YulFunctionCall", - "src": "15169:18:12" + "src": "13160:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15161:4:12" + "src": "13152:4:14" } ] }, @@ -10082,12 +9364,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15208:9:12" + "src": "13199:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15219:1:12", + "src": "13210:1:14", "type": "", "value": "0" } @@ -10095,68 +9377,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15204:3:12" + "src": "13195:3:14" }, "nodeType": "YulFunctionCall", - "src": "15204:17:12" + "src": "13195:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15227:4:12" + "src": "13218:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15233:9:12" + "src": "13224:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15223:3:12" + "src": "13214:3:14" }, "nodeType": "YulFunctionCall", - "src": "15223:20:12" + "src": "13214:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15197:6:12" + "src": "13188:6:14" }, "nodeType": "YulFunctionCall", - "src": "15197:47:12" + "src": "13188:47:14" }, "nodeType": "YulExpressionStatement", - "src": "15197:47:12" + "src": "13188:47:14" }, { "nodeType": "YulAssignment", - "src": "15253:139:12", + "src": "13244:139:14", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15387:4:12" + "src": "13378:4:14" } ], "functionName": { "name": "abi_encode_t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15261:124:12" + "src": "13252:124:14" }, "nodeType": "YulFunctionCall", - "src": "15261:131:12" + "src": "13252:131:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15253:4:12" + "src": "13244:4:14" } ] } @@ -10168,7 +9450,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15131:9:12", + "src": "13122:9:14", "type": "" } ], @@ -10176,16 +9458,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15146:4:12", + "src": "13137:4:14", "type": "" } ], - "src": "14980:419:12" + "src": "12971:419:14" }, { "body": { "nodeType": "YulBlock", - "src": "15511:72:12", + "src": "13502:72:14", "statements": [ { "expression": { @@ -10195,12 +9477,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "15533:6:12" + "src": "13524:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15541:1:12", + "src": "13532:1:14", "type": "", "value": "0" } @@ -10208,16 +9490,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15529:3:12" + "src": "13520:3:14" }, "nodeType": "YulFunctionCall", - "src": "15529:14:12" + "src": "13520:14:14" }, { "hexValue": "4d696e7461626c6520636f756e74206973206e6f7420656e6f756768", "kind": "string", "nodeType": "YulLiteral", - "src": "15545:30:12", + "src": "13536:30:14", "type": "", "value": "Mintable count is not enough" } @@ -10225,13 +9507,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15522:6:12" + "src": "13513:6:14" }, "nodeType": "YulFunctionCall", - "src": "15522:54:12" + "src": "13513:54:14" }, "nodeType": "YulExpressionStatement", - "src": "15522:54:12" + "src": "13513:54:14" } ] }, @@ -10241,31 +9523,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "15503:6:12", + "src": "13494:6:14", "type": "" } ], - "src": "15405:178:12" + "src": "13396:178:14" }, { "body": { "nodeType": "YulBlock", - "src": "15735:220:12", + "src": "13726:220:14", "statements": [ { "nodeType": "YulAssignment", - "src": "15745:74:12", + "src": "13736:74:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15811:3:12" + "src": "13802:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15816:2:12", + "src": "13807:2:14", "type": "", "value": "28" } @@ -10273,16 +9555,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15752:58:12" + "src": "13743:58:14" }, "nodeType": "YulFunctionCall", - "src": "15752:67:12" + "src": "13743:67:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15745:3:12" + "src": "13736:3:14" } ] }, @@ -10292,34 +9574,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15917:3:12" + "src": "13908:3:14" } ], "functionName": { "name": "store_literal_in_memory_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08", "nodeType": "YulIdentifier", - "src": "15828:88:12" + "src": "13819:88:14" }, "nodeType": "YulFunctionCall", - "src": "15828:93:12" + "src": "13819:93:14" }, "nodeType": "YulExpressionStatement", - "src": "15828:93:12" + "src": "13819:93:14" }, { "nodeType": "YulAssignment", - "src": "15930:19:12", + "src": "13921:19:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15941:3:12" + "src": "13932:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15946:2:12", + "src": "13937:2:14", "type": "", "value": "32" } @@ -10327,16 +9609,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15937:3:12" + "src": "13928:3:14" }, "nodeType": "YulFunctionCall", - "src": "15937:12:12" + "src": "13928:12:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "15930:3:12" + "src": "13921:3:14" } ] } @@ -10348,7 +9630,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "15723:3:12", + "src": "13714:3:14", "type": "" } ], @@ -10356,31 +9638,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "15731:3:12", + "src": "13722:3:14", "type": "" } ], - "src": "15589:366:12" + "src": "13580:366:14" }, { "body": { "nodeType": "YulBlock", - "src": "16132:248:12", + "src": "14123:248:14", "statements": [ { "nodeType": "YulAssignment", - "src": "16142:26:12", + "src": "14133:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16154:9:12" + "src": "14145:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16165:2:12", + "src": "14156:2:14", "type": "", "value": "32" } @@ -10388,16 +9670,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16150:3:12" + "src": "14141:3:14" }, "nodeType": "YulFunctionCall", - "src": "16150:18:12" + "src": "14141:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16142:4:12" + "src": "14133:4:14" } ] }, @@ -10409,12 +9691,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16189:9:12" + "src": "14180:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16200:1:12", + "src": "14191:1:14", "type": "", "value": "0" } @@ -10422,68 +9704,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16185:3:12" + "src": "14176:3:14" }, "nodeType": "YulFunctionCall", - "src": "16185:17:12" + "src": "14176:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16208:4:12" + "src": "14199:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16214:9:12" + "src": "14205:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16204:3:12" + "src": "14195:3:14" }, "nodeType": "YulFunctionCall", - "src": "16204:20:12" + "src": "14195:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16178:6:12" + "src": "14169:6:14" }, "nodeType": "YulFunctionCall", - "src": "16178:47:12" + "src": "14169:47:14" }, "nodeType": "YulExpressionStatement", - "src": "16178:47:12" + "src": "14169:47:14" }, { "nodeType": "YulAssignment", - "src": "16234:139:12", + "src": "14225:139:14", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16368:4:12" + "src": "14359:4:14" } ], "functionName": { "name": "abi_encode_t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16242:124:12" + "src": "14233:124:14" }, "nodeType": "YulFunctionCall", - "src": "16242:131:12" + "src": "14233:131:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16234:4:12" + "src": "14225:4:14" } ] } @@ -10495,7 +9777,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16112:9:12", + "src": "14103:9:14", "type": "" } ], @@ -10503,31 +9785,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16127:4:12", + "src": "14118:4:14", "type": "" } ], - "src": "15961:419:12" + "src": "13952:419:14" }, { "body": { "nodeType": "YulBlock", - "src": "16512:206:12", + "src": "14503:206:14", "statements": [ { "nodeType": "YulAssignment", - "src": "16522:26:12", + "src": "14513:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16534:9:12" + "src": "14525:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16545:2:12", + "src": "14536:2:14", "type": "", "value": "64" } @@ -10535,16 +9817,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16530:3:12" + "src": "14521:3:14" }, "nodeType": "YulFunctionCall", - "src": "16530:18:12" + "src": "14521:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16522:4:12" + "src": "14513:4:14" } ] }, @@ -10554,19 +9836,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "16602:6:12" + "src": "14593:6:14" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16615:9:12" + "src": "14606:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16626:1:12", + "src": "14617:1:14", "type": "", "value": "0" } @@ -10574,22 +9856,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16611:3:12" + "src": "14602:3:14" }, "nodeType": "YulFunctionCall", - "src": "16611:17:12" + "src": "14602:17:14" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "16558:43:12" + "src": "14549:43:14" }, "nodeType": "YulFunctionCall", - "src": "16558:71:12" + "src": "14549:71:14" }, "nodeType": "YulExpressionStatement", - "src": "16558:71:12" + "src": "14549:71:14" }, { "expression": { @@ -10597,19 +9879,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "16683:6:12" + "src": "14674:6:14" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16696:9:12" + "src": "14687:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16707:2:12", + "src": "14698:2:14", "type": "", "value": "32" } @@ -10617,22 +9899,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16692:3:12" + "src": "14683:3:14" }, "nodeType": "YulFunctionCall", - "src": "16692:18:12" + "src": "14683:18:14" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "16639:43:12" + "src": "14630:43:14" }, "nodeType": "YulFunctionCall", - "src": "16639:72:12" + "src": "14630:72:14" }, "nodeType": "YulExpressionStatement", - "src": "16639:72:12" + "src": "14630:72:14" } ] }, @@ -10642,19 +9924,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16476:9:12", + "src": "14467:9:14", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "16488:6:12", + "src": "14479:6:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "16496:6:12", + "src": "14487:6:14", "type": "" } ], @@ -10662,20 +9944,20 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16507:4:12", + "src": "14498:4:14", "type": "" } ], - "src": "16386:332:12" + "src": "14377:332:14" }, { "body": { "nodeType": "YulBlock", - "src": "16772:54:12", + "src": "14763:54:14", "statements": [ { "nodeType": "YulAssignment", - "src": "16782:38:12", + "src": "14773:38:14", "value": { "arguments": [ { @@ -10683,12 +9965,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "16800:5:12" + "src": "14791:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16807:2:12", + "src": "14798:2:14", "type": "", "value": "31" } @@ -10696,17 +9978,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16796:3:12" + "src": "14787:3:14" }, "nodeType": "YulFunctionCall", - "src": "16796:14:12" + "src": "14787:14:14" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "16816:2:12", + "src": "14807:2:14", "type": "", "value": "31" } @@ -10714,25 +9996,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "16812:3:12" + "src": "14803:3:14" }, "nodeType": "YulFunctionCall", - "src": "16812:7:12" + "src": "14803:7:14" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "16792:3:12" + "src": "14783:3:14" }, "nodeType": "YulFunctionCall", - "src": "16792:28:12" + "src": "14783:28:14" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "16782:6:12" + "src": "14773:6:14" } ] } @@ -10744,7 +10026,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "16755:5:12", + "src": "14746:5:14", "type": "" } ], @@ -10752,57 +10034,57 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "16765:6:12", + "src": "14756:6:14", "type": "" } ], - "src": "16724:102:12" + "src": "14715:102:14" }, { "body": { "nodeType": "YulBlock", - "src": "16875:238:12", + "src": "14866:238:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "16885:58:12", + "src": "14876:58:14", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "16907:6:12" + "src": "14898:6:14" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "16937:4:12" + "src": "14928:4:14" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "16915:21:12" + "src": "14906:21:14" }, "nodeType": "YulFunctionCall", - "src": "16915:27:12" + "src": "14906:27:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16903:3:12" + "src": "14894:3:14" }, "nodeType": "YulFunctionCall", - "src": "16903:40:12" + "src": "14894:40:14" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "16889:10:12", + "src": "14880:10:14", "type": "" } ] @@ -10810,7 +10092,7 @@ { "body": { "nodeType": "YulBlock", - "src": "17054:22:12", + "src": "15045:22:14", "statements": [ { "expression": { @@ -10818,13 +10100,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "17056:16:12" + "src": "15047:16:14" }, "nodeType": "YulFunctionCall", - "src": "17056:18:12" + "src": "15047:18:14" }, "nodeType": "YulExpressionStatement", - "src": "17056:18:12" + "src": "15047:18:14" } ] }, @@ -10835,12 +10117,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "16997:10:12" + "src": "14988:10:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17009:18:12", + "src": "15000:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -10848,43 +10130,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "16994:2:12" + "src": "14985:2:14" }, "nodeType": "YulFunctionCall", - "src": "16994:34:12" + "src": "14985:34:14" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "17033:10:12" + "src": "15024:10:14" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17045:6:12" + "src": "15036:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "17030:2:12" + "src": "15021:2:14" }, "nodeType": "YulFunctionCall", - "src": "17030:22:12" + "src": "15021:22:14" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "16991:2:12" + "src": "14982:2:14" }, "nodeType": "YulFunctionCall", - "src": "16991:62:12" + "src": "14982:62:14" }, "nodeType": "YulIf", - "src": "16988:88:12" + "src": "14979:88:14" }, { "expression": { @@ -10892,26 +10174,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "17092:2:12", + "src": "15083:2:14", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "17096:10:12" + "src": "15087:10:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17085:6:12" + "src": "15076:6:14" }, "nodeType": "YulFunctionCall", - "src": "17085:22:12" + "src": "15076:22:14" }, "nodeType": "YulExpressionStatement", - "src": "17085:22:12" + "src": "15076:22:14" } ] }, @@ -10921,41 +10203,41 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "16861:6:12", + "src": "14852:6:14", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "16869:4:12", + "src": "14860:4:14", "type": "" } ], - "src": "16832:281:12" + "src": "14823:281:14" }, { "body": { "nodeType": "YulBlock", - "src": "17160:88:12", + "src": "15151:88:14", "statements": [ { "nodeType": "YulAssignment", - "src": "17170:30:12", + "src": "15161:30:14", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "17180:18:12" + "src": "15171:18:14" }, "nodeType": "YulFunctionCall", - "src": "17180:20:12" + "src": "15171:20:14" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17170:6:12" + "src": "15161:6:14" } ] }, @@ -10965,24 +10247,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17229:6:12" + "src": "15220:6:14" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "17237:4:12" + "src": "15228:4:14" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "17209:19:12" + "src": "15200:19:14" }, "nodeType": "YulFunctionCall", - "src": "17209:33:12" + "src": "15200:33:14" }, "nodeType": "YulExpressionStatement", - "src": "17209:33:12" + "src": "15200:33:14" } ] }, @@ -10992,7 +10274,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "17144:4:12", + "src": "15135:4:14", "type": "" } ], @@ -11000,21 +10282,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "17153:6:12", + "src": "15144:6:14", "type": "" } ], - "src": "17119:129:12" + "src": "15110:129:14" }, { "body": { "nodeType": "YulBlock", - "src": "17336:229:12", + "src": "15327:229:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "17441:22:12", + "src": "15432:22:14", "statements": [ { "expression": { @@ -11022,13 +10304,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "17443:16:12" + "src": "15434:16:14" }, "nodeType": "YulFunctionCall", - "src": "17443:18:12" + "src": "15434:18:14" }, "nodeType": "YulExpressionStatement", - "src": "17443:18:12" + "src": "15434:18:14" } ] }, @@ -11037,12 +10319,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "17413:6:12" + "src": "15404:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17421:18:12", + "src": "15412:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -11050,28 +10332,28 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "17410:2:12" + "src": "15401:2:14" }, "nodeType": "YulFunctionCall", - "src": "17410:30:12" + "src": "15401:30:14" }, "nodeType": "YulIf", - "src": "17407:56:12" + "src": "15398:56:14" }, { "nodeType": "YulAssignment", - "src": "17473:25:12", + "src": "15464:25:14", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "17485:6:12" + "src": "15476:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17493:4:12", + "src": "15484:4:14", "type": "", "value": "0x20" } @@ -11079,33 +10361,33 @@ "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "17481:3:12" + "src": "15472:3:14" }, "nodeType": "YulFunctionCall", - "src": "17481:17:12" + "src": "15472:17:14" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "17473:4:12" + "src": "15464:4:14" } ] }, { "nodeType": "YulAssignment", - "src": "17535:23:12", + "src": "15526:23:14", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "17547:4:12" + "src": "15538:4:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17553:4:12", + "src": "15544:4:14", "type": "", "value": "0x20" } @@ -11113,16 +10395,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17543:3:12" + "src": "15534:3:14" }, "nodeType": "YulFunctionCall", - "src": "17543:15:12" + "src": "15534:15:14" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "17535:4:12" + "src": "15526:4:14" } ] } @@ -11134,7 +10416,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "17320:6:12", + "src": "15311:6:14", "type": "" } ], @@ -11142,41 +10424,41 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "17331:4:12", + "src": "15322:4:14", "type": "" } ], - "src": "17254:311:12" + "src": "15245:311:14" }, { "body": { "nodeType": "YulBlock", - "src": "17634:80:12", + "src": "15625:80:14", "statements": [ { "nodeType": "YulAssignment", - "src": "17644:22:12", + "src": "15635:22:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "17659:6:12" + "src": "15650:6:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "17653:5:12" + "src": "15644:5:14" }, "nodeType": "YulFunctionCall", - "src": "17653:13:12" + "src": "15644:13:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "17644:5:12" + "src": "15635:5:14" } ] }, @@ -11186,19 +10468,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "17702:5:12" + "src": "15693:5:14" } ], "functionName": { "name": "validator_revert_t_uint256", "nodeType": "YulIdentifier", - "src": "17675:26:12" + "src": "15666:26:14" }, "nodeType": "YulFunctionCall", - "src": "17675:33:12" + "src": "15666:33:14" }, "nodeType": "YulExpressionStatement", - "src": "17675:33:12" + "src": "15666:33:14" } ] }, @@ -11208,13 +10490,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "17612:6:12", + "src": "15603:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "17620:3:12", + "src": "15611:3:14", "type": "" } ], @@ -11222,20 +10504,20 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "17628:5:12", + "src": "15619:5:14", "type": "" } ], - "src": "17571:143:12" + "src": "15562:143:14" }, { "body": { "nodeType": "YulBlock", - "src": "17850:619:12", + "src": "15841:619:14", "statements": [ { "nodeType": "YulAssignment", - "src": "17860:90:12", + "src": "15851:90:14", "value": { "arguments": [ { @@ -11243,47 +10525,47 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "17942:6:12" + "src": "15933:6:14" } ], "functionName": { "name": "array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr", "nodeType": "YulIdentifier", - "src": "17885:56:12" + "src": "15876:56:14" }, "nodeType": "YulFunctionCall", - "src": "17885:64:12" + "src": "15876:64:14" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "17869:15:12" + "src": "15860:15:14" }, "nodeType": "YulFunctionCall", - "src": "17869:81:12" + "src": "15860:81:14" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "17860:5:12" + "src": "15851:5:14" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "17959:16:12", + "src": "15950:16:14", "value": { "name": "array", "nodeType": "YulIdentifier", - "src": "17970:5:12" + "src": "15961:5:14" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "17963:3:12", + "src": "15954:3:14", "type": "" } ] @@ -11294,39 +10576,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "17992:5:12" + "src": "15983:5:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "17999:6:12" + "src": "15990:6:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17985:6:12" + "src": "15976:6:14" }, "nodeType": "YulFunctionCall", - "src": "17985:21:12" + "src": "15976:21:14" }, "nodeType": "YulExpressionStatement", - "src": "17985:21:12" + "src": "15976:21:14" }, { "nodeType": "YulAssignment", - "src": "18015:23:12", + "src": "16006:23:14", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "18026:5:12" + "src": "16017:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18033:4:12", + "src": "16024:4:14", "type": "", "value": "0x20" } @@ -11334,40 +10616,40 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18022:3:12" + "src": "16013:3:14" }, "nodeType": "YulFunctionCall", - "src": "18022:16:12" + "src": "16013:16:14" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "18015:3:12" + "src": "16006:3:14" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "18048:44:12", + "src": "16039:44:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "18066:6:12" + "src": "16057:6:14" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "18078:6:12" + "src": "16069:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18086:4:12", + "src": "16077:4:14", "type": "", "value": "0x20" } @@ -11375,25 +10657,25 @@ "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "18074:3:12" + "src": "16065:3:14" }, "nodeType": "YulFunctionCall", - "src": "18074:17:12" + "src": "16065:17:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18062:3:12" + "src": "16053:3:14" }, "nodeType": "YulFunctionCall", - "src": "18062:30:12" + "src": "16053:30:14" }, "variables": [ { "name": "srcEnd", "nodeType": "YulTypedName", - "src": "18052:6:12", + "src": "16043:6:14", "type": "" } ] @@ -11401,7 +10683,7 @@ { "body": { "nodeType": "YulBlock", - "src": "18120:103:12", + "src": "16111:103:14", "statements": [ { "expression": { @@ -11409,13 +10691,13 @@ "functionName": { "name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef", "nodeType": "YulIdentifier", - "src": "18134:77:12" + "src": "16125:77:14" }, "nodeType": "YulFunctionCall", - "src": "18134:79:12" + "src": "16125:79:14" }, "nodeType": "YulExpressionStatement", - "src": "18134:79:12" + "src": "16125:79:14" } ] }, @@ -11424,43 +10706,43 @@ { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "18107:6:12" + "src": "16098:6:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "18115:3:12" + "src": "16106:3:14" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "18104:2:12" + "src": "16095:2:14" }, "nodeType": "YulFunctionCall", - "src": "18104:15:12" + "src": "16095:15:14" }, "nodeType": "YulIf", - "src": "18101:122:12" + "src": "16092:122:14" }, { "body": { "nodeType": "YulBlock", - "src": "18308:155:12", + "src": "16299:155:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "18323:21:12", + "src": "16314:21:14", "value": { "name": "src", "nodeType": "YulIdentifier", - "src": "18341:3:12" + "src": "16332:3:14" }, "variables": [ { "name": "elementPos", "nodeType": "YulTypedName", - "src": "18327:10:12", + "src": "16318:10:14", "type": "" } ] @@ -11471,55 +10753,55 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "18365:3:12" + "src": "16356:3:14" }, { "arguments": [ { "name": "elementPos", "nodeType": "YulIdentifier", - "src": "18402:10:12" + "src": "16393:10:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "18414:3:12" + "src": "16405:3:14" } ], "functionName": { "name": "abi_decode_t_uint256_fromMemory", "nodeType": "YulIdentifier", - "src": "18370:31:12" + "src": "16361:31:14" }, "nodeType": "YulFunctionCall", - "src": "18370:48:12" + "src": "16361:48:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18358:6:12" + "src": "16349:6:14" }, "nodeType": "YulFunctionCall", - "src": "18358:61:12" + "src": "16349:61:14" }, "nodeType": "YulExpressionStatement", - "src": "18358:61:12" + "src": "16349:61:14" }, { "nodeType": "YulAssignment", - "src": "18432:21:12", + "src": "16423:21:14", "value": { "arguments": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "18443:3:12" + "src": "16434:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18448:4:12", + "src": "16439:4:14", "type": "", "value": "0x20" } @@ -11527,16 +10809,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18439:3:12" + "src": "16430:3:14" }, "nodeType": "YulFunctionCall", - "src": "18439:14:12" + "src": "16430:14:14" }, "variableNames": [ { "name": "dst", "nodeType": "YulIdentifier", - "src": "18432:3:12" + "src": "16423:3:14" } ] } @@ -11547,41 +10829,41 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "18261:3:12" + "src": "16252:3:14" }, { "name": "srcEnd", "nodeType": "YulIdentifier", - "src": "18266:6:12" + "src": "16257:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "18258:2:12" + "src": "16249:2:14" }, "nodeType": "YulFunctionCall", - "src": "18258:15:12" + "src": "16249:15:14" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "18274:25:12", + "src": "16265:25:14", "statements": [ { "nodeType": "YulAssignment", - "src": "18276:21:12", + "src": "16267:21:14", "value": { "arguments": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "18287:3:12" + "src": "16278:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18292:4:12", + "src": "16283:4:14", "type": "", "value": "0x20" } @@ -11589,16 +10871,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18283:3:12" + "src": "16274:3:14" }, "nodeType": "YulFunctionCall", - "src": "18283:14:12" + "src": "16274:14:14" }, "variableNames": [ { "name": "src", "nodeType": "YulIdentifier", - "src": "18276:3:12" + "src": "16267:3:14" } ] } @@ -11606,28 +10888,28 @@ }, "pre": { "nodeType": "YulBlock", - "src": "18236:21:12", + "src": "16227:21:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "18238:17:12", + "src": "16229:17:14", "value": { "name": "offset", "nodeType": "YulIdentifier", - "src": "18249:6:12" + "src": "16240:6:14" }, "variables": [ { "name": "src", "nodeType": "YulTypedName", - "src": "18242:3:12", + "src": "16233:3:14", "type": "" } ] } ] }, - "src": "18232:231:12" + "src": "16223:231:14" } ] }, @@ -11637,19 +10919,19 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "17820:6:12", + "src": "15811:6:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "17828:6:12", + "src": "15819:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "17836:3:12", + "src": "15827:3:14", "type": "" } ], @@ -11657,21 +10939,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "17844:5:12", + "src": "15835:5:14", "type": "" } ], - "src": "17737:732:12" + "src": "15728:732:14" }, { "body": { "nodeType": "YulBlock", - "src": "18580:297:12", + "src": "16571:297:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "18629:83:12", + "src": "16620:83:14", "statements": [ { "expression": { @@ -11679,13 +10961,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "18631:77:12" + "src": "16622:77:14" }, "nodeType": "YulFunctionCall", - "src": "18631:79:12" + "src": "16622:79:14" }, "nodeType": "YulExpressionStatement", - "src": "18631:79:12" + "src": "16622:79:14" } ] }, @@ -11698,12 +10980,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "18608:6:12" + "src": "16599:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18616:4:12", + "src": "16607:4:14", "type": "", "value": "0x1f" } @@ -11711,68 +10993,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18604:3:12" + "src": "16595:3:14" }, "nodeType": "YulFunctionCall", - "src": "18604:17:12" + "src": "16595:17:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "18623:3:12" + "src": "16614:3:14" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "18600:3:12" + "src": "16591:3:14" }, "nodeType": "YulFunctionCall", - "src": "18600:27:12" + "src": "16591:27:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "18593:6:12" + "src": "16584:6:14" }, "nodeType": "YulFunctionCall", - "src": "18593:35:12" + "src": "16584:35:14" }, "nodeType": "YulIf", - "src": "18590:122:12" + "src": "16581:122:14" }, { "nodeType": "YulVariableDeclaration", - "src": "18721:27:12", + "src": "16712:27:14", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "18741:6:12" + "src": "16732:6:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "18735:5:12" + "src": "16726:5:14" }, "nodeType": "YulFunctionCall", - "src": "18735:13:12" + "src": "16726:13:14" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "18725:6:12", + "src": "16716:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "18757:114:12", + "src": "16748:114:14", "value": { "arguments": [ { @@ -11780,12 +11062,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "18844:6:12" + "src": "16835:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18852:4:12", + "src": "16843:4:14", "type": "", "value": "0x20" } @@ -11793,35 +11075,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18840:3:12" + "src": "16831:3:14" }, "nodeType": "YulFunctionCall", - "src": "18840:17:12" + "src": "16831:17:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "18859:6:12" + "src": "16850:6:14" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "18867:3:12" + "src": "16858:3:14" } ], "functionName": { "name": "abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "18766:73:12" + "src": "16757:73:14" }, "nodeType": "YulFunctionCall", - "src": "18766:105:12" + "src": "16757:105:14" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "18757:5:12" + "src": "16748:5:14" } ] } @@ -11833,13 +11115,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "18558:6:12", + "src": "16549:6:14", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "18566:3:12", + "src": "16557:3:14", "type": "" } ], @@ -11847,21 +11129,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "18574:5:12", + "src": "16565:5:14", "type": "" } ], - "src": "18492:385:12" + "src": "16483:385:14" }, { "body": { "nodeType": "YulBlock", - "src": "18985:452:12", + "src": "16976:452:14", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "19031:83:12", + "src": "17022:83:14", "statements": [ { "expression": { @@ -11869,13 +11151,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "19033:77:12" + "src": "17024:77:14" }, "nodeType": "YulFunctionCall", - "src": "19033:79:12" + "src": "17024:79:14" }, "nodeType": "YulExpressionStatement", - "src": "19033:79:12" + "src": "17024:79:14" } ] }, @@ -11886,26 +11168,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "19006:7:12" + "src": "16997:7:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19015:9:12" + "src": "17006:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19002:3:12" + "src": "16993:3:14" }, "nodeType": "YulFunctionCall", - "src": "19002:23:12" + "src": "16993:23:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19027:2:12", + "src": "17018:2:14", "type": "", "value": "32" } @@ -11913,21 +11195,21 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "18998:3:12" + "src": "16989:3:14" }, "nodeType": "YulFunctionCall", - "src": "18998:32:12" + "src": "16989:32:14" }, "nodeType": "YulIf", - "src": "18995:119:12" + "src": "16986:119:14" }, { "nodeType": "YulBlock", - "src": "19124:306:12", + "src": "17115:306:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "19139:38:12", + "src": "17130:38:14", "value": { "arguments": [ { @@ -11935,12 +11217,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19163:9:12" + "src": "17154:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19174:1:12", + "src": "17165:1:14", "type": "", "value": "0" } @@ -11948,25 +11230,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19159:3:12" + "src": "17150:3:14" }, "nodeType": "YulFunctionCall", - "src": "19159:17:12" + "src": "17150:17:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "19153:5:12" + "src": "17144:5:14" }, "nodeType": "YulFunctionCall", - "src": "19153:24:12" + "src": "17144:24:14" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "19143:6:12", + "src": "17134:6:14", "type": "" } ] @@ -11974,7 +11256,7 @@ { "body": { "nodeType": "YulBlock", - "src": "19224:83:12", + "src": "17215:83:14", "statements": [ { "expression": { @@ -11982,13 +11264,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "19226:77:12" + "src": "17217:77:14" }, "nodeType": "YulFunctionCall", - "src": "19226:79:12" + "src": "17217:79:14" }, "nodeType": "YulExpressionStatement", - "src": "19226:79:12" + "src": "17217:79:14" } ] }, @@ -11997,12 +11279,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "19196:6:12" + "src": "17187:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19204:18:12", + "src": "17195:18:14", "type": "", "value": "0xffffffffffffffff" } @@ -12010,17 +11292,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "19193:2:12" + "src": "17184:2:14" }, "nodeType": "YulFunctionCall", - "src": "19193:30:12" + "src": "17184:30:14" }, "nodeType": "YulIf", - "src": "19190:117:12" + "src": "17181:117:14" }, { "nodeType": "YulAssignment", - "src": "19321:99:12", + "src": "17312:99:14", "value": { "arguments": [ { @@ -12028,41 +11310,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19392:9:12" + "src": "17383:9:14" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "19403:6:12" + "src": "17394:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19388:3:12" + "src": "17379:3:14" }, "nodeType": "YulFunctionCall", - "src": "19388:22:12" + "src": "17379:22:14" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "19412:7:12" + "src": "17403:7:14" } ], "functionName": { "name": "abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "19331:56:12" + "src": "17322:56:14" }, "nodeType": "YulFunctionCall", - "src": "19331:89:12" + "src": "17322:89:14" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "19321:6:12" + "src": "17312:6:14" } ] } @@ -12076,13 +11358,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "18955:9:12", + "src": "16946:9:14", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "18966:7:12", + "src": "16957:7:14", "type": "" } ], @@ -12090,31 +11372,31 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "18978:6:12", + "src": "16969:6:14", "type": "" } ], - "src": "18883:554:12" + "src": "16874:554:14" }, { "body": { "nodeType": "YulBlock", - "src": "19669:408:12", + "src": "17660:408:14", "statements": [ { "nodeType": "YulAssignment", - "src": "19679:26:12", + "src": "17670:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19691:9:12" + "src": "17682:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19702:2:12", + "src": "17693:2:14", "type": "", "value": "64" } @@ -12122,16 +11404,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19687:3:12" + "src": "17678:3:14" }, "nodeType": "YulFunctionCall", - "src": "19687:18:12" + "src": "17678:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19679:4:12" + "src": "17670:4:14" } ] }, @@ -12143,12 +11425,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19726:9:12" + "src": "17717:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19737:1:12", + "src": "17728:1:14", "type": "", "value": "0" } @@ -12156,73 +11438,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19722:3:12" + "src": "17713:3:14" }, "nodeType": "YulFunctionCall", - "src": "19722:17:12" + "src": "17713:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19745:4:12" + "src": "17736:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19751:9:12" + "src": "17742:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19741:3:12" + "src": "17732:3:14" }, "nodeType": "YulFunctionCall", - "src": "19741:20:12" + "src": "17732:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19715:6:12" + "src": "17706:6:14" }, "nodeType": "YulFunctionCall", - "src": "19715:47:12" + "src": "17706:47:14" }, "nodeType": "YulExpressionStatement", - "src": "19715:47:12" + "src": "17706:47:14" }, { "nodeType": "YulAssignment", - "src": "19771:116:12", + "src": "17762:116:14", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "19873:6:12" + "src": "17864:6:14" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "19882:4:12" + "src": "17873:4:14" } ], "functionName": { "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19779:93:12" + "src": "17770:93:14" }, "nodeType": "YulFunctionCall", - "src": "19779:108:12" + "src": "17770:108:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19771:4:12" + "src": "17762:4:14" } ] }, @@ -12234,12 +11516,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19908:9:12" + "src": "17899:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19919:2:12", + "src": "17910:2:14", "type": "", "value": "32" } @@ -12247,73 +11529,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19904:3:12" + "src": "17895:3:14" }, "nodeType": "YulFunctionCall", - "src": "19904:18:12" + "src": "17895:18:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19928:4:12" + "src": "17919:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19934:9:12" + "src": "17925:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19924:3:12" + "src": "17915:3:14" }, "nodeType": "YulFunctionCall", - "src": "19924:20:12" + "src": "17915:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19897:6:12" + "src": "17888:6:14" }, "nodeType": "YulFunctionCall", - "src": "19897:48:12" + "src": "17888:48:14" }, "nodeType": "YulExpressionStatement", - "src": "19897:48:12" + "src": "17888:48:14" }, { "nodeType": "YulAssignment", - "src": "19954:116:12", + "src": "17945:116:14", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "20056:6:12" + "src": "18047:6:14" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "20065:4:12" + "src": "18056:4:14" } ], "functionName": { "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19962:93:12" + "src": "17953:93:14" }, "nodeType": "YulFunctionCall", - "src": "19962:108:12" + "src": "17953:108:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19954:4:12" + "src": "17945:4:14" } ] } @@ -12325,19 +11607,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19633:9:12", + "src": "17624:9:14", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "19645:6:12", + "src": "17636:6:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "19653:6:12", + "src": "17644:6:14", "type": "" } ], @@ -12345,30 +11627,730 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19664:4:12", + "src": "17655:4:14", "type": "" } ], - "src": "19443:634:12" + "src": "17434:634:14" }, { "body": { "nodeType": "YulBlock", - "src": "20197:34:12", + "src": "18180:63:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18202:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18210:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18198:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "18198:14:14" + }, + { + "hexValue": "4f70656e207374617475732069732073616d65", + "kind": "string", + "nodeType": "YulLiteral", + "src": "18214:21:14", + "type": "", + "value": "Open status is same" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18191:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "18191:45:14" + }, + "nodeType": "YulExpressionStatement", + "src": "18191:45:14" + } + ] + }, + "name": "store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "18172:6:14", + "type": "" + } + ], + "src": "18074:169:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18395:220:14", "statements": [ { "nodeType": "YulAssignment", - "src": "20207:18:12", + "src": "18405:74:14", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18471:3:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18476:2:14", + "type": "", + "value": "19" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "18412:58:14" + }, + "nodeType": "YulFunctionCall", + "src": "18412:67:14" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18405:3:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18577:3:14" + } + ], + "functionName": { + "name": "store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d", + "nodeType": "YulIdentifier", + "src": "18488:88:14" + }, + "nodeType": "YulFunctionCall", + "src": "18488:93:14" + }, + "nodeType": "YulExpressionStatement", + "src": "18488:93:14" + }, + { + "nodeType": "YulAssignment", + "src": "18590:19:14", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18601:3:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18606:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18597:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "18597:12:14" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "18590:3:14" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "18383:3:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "18391:3:14", + "type": "" + } + ], + "src": "18249:366:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18792:248:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "18802:26:14", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18814:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18825:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18810:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "18810:18:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18802:4:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18849:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18860:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18845:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "18845:17:14" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18868:4:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18874:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "18864:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "18864:20:14" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18838:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "18838:47:14" + }, + "nodeType": "YulExpressionStatement", + "src": "18838:47:14" + }, + { + "nodeType": "YulAssignment", + "src": "18894:139:14", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19028:4:14" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "18902:124:14" + }, + "nodeType": "YulFunctionCall", + "src": "18902:131:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18894:4:14" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "18772:9:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "18787:4:14", + "type": "" + } + ], + "src": "18621:419:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19152:128:14", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "19174:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19182:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19170:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19170:14:14" + }, + { + "hexValue": "416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365", + "kind": "string", + "nodeType": "YulLiteral", + "src": "19186:34:14", + "type": "", + "value": "AccessControl: can only renounce" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19163:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "19163:58:14" + }, + "nodeType": "YulExpressionStatement", + "src": "19163:58:14" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "19242:6:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19250:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19238:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19238:15:14" + }, + { + "hexValue": "20726f6c657320666f722073656c66", + "kind": "string", + "nodeType": "YulLiteral", + "src": "19255:17:14", + "type": "", + "value": " roles for self" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19231:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "19231:42:14" + }, + "nodeType": "YulExpressionStatement", + "src": "19231:42:14" + } + ] + }, + "name": "store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "19144:6:14", + "type": "" + } + ], + "src": "19046:234:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19432:220:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "19442:74:14", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19508:3:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19513:2:14", + "type": "", + "value": "47" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "19449:58:14" + }, + "nodeType": "YulFunctionCall", + "src": "19449:67:14" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19442:3:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19614:3:14" + } + ], + "functionName": { + "name": "store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b", + "nodeType": "YulIdentifier", + "src": "19525:88:14" + }, + "nodeType": "YulFunctionCall", + "src": "19525:93:14" + }, + "nodeType": "YulExpressionStatement", + "src": "19525:93:14" + }, + { + "nodeType": "YulAssignment", + "src": "19627:19:14", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19638:3:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19643:2:14", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19634:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19634:12:14" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "19627:3:14" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "19420:3:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "19428:3:14", + "type": "" + } + ], + "src": "19286:366:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19829:248:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "19839:26:14", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "19851:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19862:2:14", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19847:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19847:18:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19839:4:14" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "19886:9:14" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19897:1:14", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19882:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19882:17:14" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19905:4:14" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "19911:9:14" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "19901:3:14" + }, + "nodeType": "YulFunctionCall", + "src": "19901:20:14" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19875:6:14" + }, + "nodeType": "YulFunctionCall", + "src": "19875:47:14" + }, + "nodeType": "YulExpressionStatement", + "src": "19875:47:14" + }, + { + "nodeType": "YulAssignment", + "src": "19931:139:14", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "20065:4:14" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "19939:124:14" + }, + "nodeType": "YulFunctionCall", + "src": "19939:131:14" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19931:4:14" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "19809:9:14", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "19824:4:14", + "type": "" + } + ], + "src": "19658:419:14" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "20197:34:14", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "20207:18:14", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "20222:3:12" + "src": "20222:3:14" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "20207:11:12" + "src": "20207:11:14" } ] } @@ -12380,13 +12362,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "20169:3:12", + "src": "20169:3:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "20174:6:12", + "src": "20174:6:14", "type": "" } ], @@ -12394,16 +12376,16 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "20185:11:12", + "src": "20185:11:14", "type": "" } ], - "src": "20083:148:12" + "src": "20083:148:14" }, { "body": { "nodeType": "YulBlock", - "src": "20343:67:12", + "src": "20343:67:14", "statements": [ { "expression": { @@ -12413,12 +12395,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "20365:6:12" + "src": "20365:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20373:1:12", + "src": "20373:1:14", "type": "", "value": "0" } @@ -12426,16 +12408,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20361:3:12" + "src": "20361:3:14" }, "nodeType": "YulFunctionCall", - "src": "20361:14:12" + "src": "20361:14:14" }, { "hexValue": "416363657373436f6e74726f6c3a206163636f756e7420", "kind": "string", "nodeType": "YulLiteral", - "src": "20377:25:12", + "src": "20377:25:14", "type": "", "value": "AccessControl: account " } @@ -12443,13 +12425,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "20354:6:12" + "src": "20354:6:14" }, "nodeType": "YulFunctionCall", - "src": "20354:49:12" + "src": "20354:49:14" }, "nodeType": "YulExpressionStatement", - "src": "20354:49:12" + "src": "20354:49:14" } ] }, @@ -12459,31 +12441,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "20335:6:12", + "src": "20335:6:14", "type": "" } ], - "src": "20237:173:12" + "src": "20237:173:14" }, { "body": { "nodeType": "YulBlock", - "src": "20580:238:12", + "src": "20580:238:14", "statements": [ { "nodeType": "YulAssignment", - "src": "20590:92:12", + "src": "20590:92:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20674:3:12" + "src": "20674:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20679:2:12", + "src": "20679:2:14", "type": "", "value": "23" } @@ -12491,16 +12473,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "20597:76:12" + "src": "20597:76:14" }, "nodeType": "YulFunctionCall", - "src": "20597:85:12" + "src": "20597:85:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20590:3:12" + "src": "20590:3:14" } ] }, @@ -12510,34 +12492,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20780:3:12" + "src": "20780:3:14" } ], "functionName": { "name": "store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874", "nodeType": "YulIdentifier", - "src": "20691:88:12" + "src": "20691:88:14" }, "nodeType": "YulFunctionCall", - "src": "20691:93:12" + "src": "20691:93:14" }, "nodeType": "YulExpressionStatement", - "src": "20691:93:12" + "src": "20691:93:14" }, { "nodeType": "YulAssignment", - "src": "20793:19:12", + "src": "20793:19:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20804:3:12" + "src": "20804:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20809:2:12", + "src": "20809:2:14", "type": "", "value": "23" } @@ -12545,16 +12527,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20800:3:12" + "src": "20800:3:14" }, "nodeType": "YulFunctionCall", - "src": "20800:12:12" + "src": "20800:12:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "20793:3:12" + "src": "20793:3:14" } ] } @@ -12566,7 +12548,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "20568:3:12", + "src": "20568:3:14", "type": "" } ], @@ -12574,41 +12556,41 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "20576:3:12", + "src": "20576:3:14", "type": "" } ], - "src": "20416:402:12" + "src": "20416:402:14" }, { "body": { "nodeType": "YulBlock", - "src": "20883:40:12", + "src": "20883:40:14", "statements": [ { "nodeType": "YulAssignment", - "src": "20894:22:12", + "src": "20894:22:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "20910:5:12" + "src": "20910:5:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "20904:5:12" + "src": "20904:5:14" }, "nodeType": "YulFunctionCall", - "src": "20904:12:12" + "src": "20904:12:14" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "20894:6:12" + "src": "20894:6:14" } ] } @@ -12620,7 +12602,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "20866:5:12", + "src": "20866:5:14", "type": "" } ], @@ -12628,24 +12610,24 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "20876:6:12", + "src": "20876:6:14", "type": "" } ], - "src": "20824:99:12" + "src": "20824:99:14" }, { "body": { "nodeType": "YulBlock", - "src": "20978:258:12", + "src": "20978:258:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "20988:10:12", + "src": "20988:10:14", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "20997:1:12", + "src": "20997:1:14", "type": "", "value": "0" }, @@ -12653,7 +12635,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "20992:1:12", + "src": "20992:1:14", "type": "" } ] @@ -12661,7 +12643,7 @@ { "body": { "nodeType": "YulBlock", - "src": "21057:63:12", + "src": "21057:63:14", "statements": [ { "expression": { @@ -12671,21 +12653,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "21082:3:12" + "src": "21082:3:14" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "21087:1:12" + "src": "21087:1:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21078:3:12" + "src": "21078:3:14" }, "nodeType": "YulFunctionCall", - "src": "21078:11:12" + "src": "21078:11:14" }, { "arguments": [ @@ -12694,42 +12676,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "21101:3:12" + "src": "21101:3:14" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "21106:1:12" + "src": "21106:1:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21097:3:12" + "src": "21097:3:14" }, "nodeType": "YulFunctionCall", - "src": "21097:11:12" + "src": "21097:11:14" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "21091:5:12" + "src": "21091:5:14" }, "nodeType": "YulFunctionCall", - "src": "21091:18:12" + "src": "21091:18:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21071:6:12" + "src": "21071:6:14" }, "nodeType": "YulFunctionCall", - "src": "21071:39:12" + "src": "21071:39:14" }, "nodeType": "YulExpressionStatement", - "src": "21071:39:12" + "src": "21071:39:14" } ] }, @@ -12738,41 +12720,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "21018:1:12" + "src": "21018:1:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21021:6:12" + "src": "21021:6:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "21015:2:12" + "src": "21015:2:14" }, "nodeType": "YulFunctionCall", - "src": "21015:13:12" + "src": "21015:13:14" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "21029:19:12", + "src": "21029:19:14", "statements": [ { "nodeType": "YulAssignment", - "src": "21031:15:12", + "src": "21031:15:14", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "21040:1:12" + "src": "21040:1:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21043:2:12", + "src": "21043:2:14", "type": "", "value": "32" } @@ -12780,16 +12762,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21036:3:12" + "src": "21036:3:14" }, "nodeType": "YulFunctionCall", - "src": "21036:10:12" + "src": "21036:10:14" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "21031:1:12" + "src": "21031:1:14" } ] } @@ -12797,15 +12779,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "21011:3:12", + "src": "21011:3:14", "statements": [] }, - "src": "21007:113:12" + "src": "21007:113:14" }, { "body": { "nodeType": "YulBlock", - "src": "21154:76:12", + "src": "21154:76:14", "statements": [ { "expression": { @@ -12815,26 +12797,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "21204:3:12" + "src": "21204:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21209:6:12" + "src": "21209:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21200:3:12" + "src": "21200:3:14" }, "nodeType": "YulFunctionCall", - "src": "21200:16:12" + "src": "21200:16:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21218:1:12", + "src": "21218:1:14", "type": "", "value": "0" } @@ -12842,13 +12824,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21193:6:12" + "src": "21193:6:14" }, "nodeType": "YulFunctionCall", - "src": "21193:27:12" + "src": "21193:27:14" }, "nodeType": "YulExpressionStatement", - "src": "21193:27:12" + "src": "21193:27:14" } ] }, @@ -12857,24 +12839,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "21135:1:12" + "src": "21135:1:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21138:6:12" + "src": "21138:6:14" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "21132:2:12" + "src": "21132:2:14" }, "nodeType": "YulFunctionCall", - "src": "21132:13:12" + "src": "21132:13:14" }, "nodeType": "YulIf", - "src": "21129:101:12" + "src": "21129:101:14" } ] }, @@ -12884,86 +12866,86 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "20960:3:12", + "src": "20960:3:14", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "20965:3:12", + "src": "20965:3:14", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "20970:6:12", + "src": "20970:6:14", "type": "" } ], - "src": "20929:307:12" + "src": "20929:307:14" }, { "body": { "nodeType": "YulBlock", - "src": "21352:267:12", + "src": "21352:267:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "21362:53:12", + "src": "21362:53:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "21409:5:12" + "src": "21409:5:14" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "21376:32:12" + "src": "21376:32:14" }, "nodeType": "YulFunctionCall", - "src": "21376:39:12" + "src": "21376:39:14" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "21366:6:12", + "src": "21366:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "21424:96:12", + "src": "21424:96:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21508:3:12" + "src": "21508:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21513:6:12" + "src": "21513:6:14" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "21431:76:12" + "src": "21431:76:14" }, "nodeType": "YulFunctionCall", - "src": "21431:89:12" + "src": "21431:89:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21424:3:12" + "src": "21424:3:14" } ] }, @@ -12975,12 +12957,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "21555:5:12" + "src": "21555:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21562:4:12", + "src": "21562:4:14", "type": "", "value": "0x20" } @@ -12988,62 +12970,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21551:3:12" + "src": "21551:3:14" }, "nodeType": "YulFunctionCall", - "src": "21551:16:12" + "src": "21551:16:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "21569:3:12" + "src": "21569:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21574:6:12" + "src": "21574:6:14" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "21529:21:12" + "src": "21529:21:14" }, "nodeType": "YulFunctionCall", - "src": "21529:52:12" + "src": "21529:52:14" }, "nodeType": "YulExpressionStatement", - "src": "21529:52:12" + "src": "21529:52:14" }, { "nodeType": "YulAssignment", - "src": "21590:23:12", + "src": "21590:23:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21601:3:12" + "src": "21601:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "21606:6:12" + "src": "21606:6:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21597:3:12" + "src": "21597:3:14" }, "nodeType": "YulFunctionCall", - "src": "21597:16:12" + "src": "21597:16:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "21590:3:12" + "src": "21590:3:14" } ] } @@ -13055,13 +13037,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "21333:5:12", + "src": "21333:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "21340:3:12", + "src": "21340:3:14", "type": "" } ], @@ -13069,16 +13051,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "21348:3:12", + "src": "21348:3:14", "type": "" } ], - "src": "21242:377:12" + "src": "21242:377:14" }, { "body": { "nodeType": "YulBlock", - "src": "21731:61:12", + "src": "21731:61:14", "statements": [ { "expression": { @@ -13088,12 +13070,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "21753:6:12" + "src": "21753:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21761:1:12", + "src": "21761:1:14", "type": "", "value": "0" } @@ -13101,16 +13083,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21749:3:12" + "src": "21749:3:14" }, "nodeType": "YulFunctionCall", - "src": "21749:14:12" + "src": "21749:14:14" }, { "hexValue": "206973206d697373696e6720726f6c6520", "kind": "string", "nodeType": "YulLiteral", - "src": "21765:19:12", + "src": "21765:19:14", "type": "", "value": " is missing role " } @@ -13118,13 +13100,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21742:6:12" + "src": "21742:6:14" }, "nodeType": "YulFunctionCall", - "src": "21742:43:12" + "src": "21742:43:14" }, "nodeType": "YulExpressionStatement", - "src": "21742:43:12" + "src": "21742:43:14" } ] }, @@ -13134,31 +13116,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "21723:6:12", + "src": "21723:6:14", "type": "" } ], - "src": "21625:167:12" + "src": "21625:167:14" }, { "body": { "nodeType": "YulBlock", - "src": "21962:238:12", + "src": "21962:238:14", "statements": [ { "nodeType": "YulAssignment", - "src": "21972:92:12", + "src": "21972:92:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22056:3:12" + "src": "22056:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22061:2:12", + "src": "22061:2:14", "type": "", "value": "17" } @@ -13166,16 +13148,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "21979:76:12" + "src": "21979:76:14" }, "nodeType": "YulFunctionCall", - "src": "21979:85:12" + "src": "21979:85:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21972:3:12" + "src": "21972:3:14" } ] }, @@ -13185,34 +13167,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22162:3:12" + "src": "22162:3:14" } ], "functionName": { "name": "store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69", "nodeType": "YulIdentifier", - "src": "22073:88:12" + "src": "22073:88:14" }, "nodeType": "YulFunctionCall", - "src": "22073:93:12" + "src": "22073:93:14" }, "nodeType": "YulExpressionStatement", - "src": "22073:93:12" + "src": "22073:93:14" }, { "nodeType": "YulAssignment", - "src": "22175:19:12", + "src": "22175:19:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22186:3:12" + "src": "22186:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22191:2:12", + "src": "22191:2:14", "type": "", "value": "17" } @@ -13220,16 +13202,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22182:3:12" + "src": "22182:3:14" }, "nodeType": "YulFunctionCall", - "src": "22182:12:12" + "src": "22182:12:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "22175:3:12" + "src": "22175:3:14" } ] } @@ -13241,7 +13223,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "21950:3:12", + "src": "21950:3:14", "type": "" } ], @@ -13249,148 +13231,148 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "21958:3:12", + "src": "21958:3:14", "type": "" } ], - "src": "21798:402:12" + "src": "21798:402:14" }, { "body": { "nodeType": "YulBlock", - "src": "22592:581:12", + "src": "22592:581:14", "statements": [ { "nodeType": "YulAssignment", - "src": "22603:155:12", + "src": "22603:155:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22754:3:12" + "src": "22754:3:14" } ], "functionName": { "name": "abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "22610:142:12" + "src": "22610:142:14" }, "nodeType": "YulFunctionCall", - "src": "22610:148:12" + "src": "22610:148:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22603:3:12" + "src": "22603:3:14" } ] }, { "nodeType": "YulAssignment", - "src": "22768:102:12", + "src": "22768:102:14", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "22857:6:12" + "src": "22857:6:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "22866:3:12" + "src": "22866:3:14" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "22775:81:12" + "src": "22775:81:14" }, "nodeType": "YulFunctionCall", - "src": "22775:95:12" + "src": "22775:95:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22768:3:12" + "src": "22768:3:14" } ] }, { "nodeType": "YulAssignment", - "src": "22880:155:12", + "src": "22880:155:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23031:3:12" + "src": "23031:3:14" } ], "functionName": { "name": "abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "22887:142:12" + "src": "22887:142:14" }, "nodeType": "YulFunctionCall", - "src": "22887:148:12" + "src": "22887:148:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22880:3:12" + "src": "22880:3:14" } ] }, { "nodeType": "YulAssignment", - "src": "23045:102:12", + "src": "23045:102:14", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "23134:6:12" + "src": "23134:6:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "23143:3:12" + "src": "23143:3:14" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "23052:81:12" + "src": "23052:81:14" }, "nodeType": "YulFunctionCall", - "src": "23052:95:12" + "src": "23052:95:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23045:3:12" + "src": "23045:3:14" } ] }, { "nodeType": "YulAssignment", - "src": "23157:10:12", + "src": "23157:10:14", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "23164:3:12" + "src": "23164:3:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "23157:3:12" + "src": "23157:3:14" } ] } @@ -13402,19 +13384,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "22563:3:12", + "src": "22563:3:14", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "22569:6:12", + "src": "22569:6:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "22577:6:12", + "src": "22577:6:14", "type": "" } ], @@ -13422,74 +13404,74 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "22588:3:12", + "src": "22588:3:14", "type": "" } ], - "src": "22206:967:12" + "src": "22206:967:14" }, { "body": { "nodeType": "YulBlock", - "src": "23271:272:12", + "src": "23271:272:14", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "23281:53:12", + "src": "23281:53:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "23328:5:12" + "src": "23328:5:14" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "23295:32:12" + "src": "23295:32:14" }, "nodeType": "YulFunctionCall", - "src": "23295:39:12" + "src": "23295:39:14" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "23285:6:12", + "src": "23285:6:14", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "23343:78:12", + "src": "23343:78:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23409:3:12" + "src": "23409:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "23414:6:12" + "src": "23414:6:14" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23350:58:12" + "src": "23350:58:14" }, "nodeType": "YulFunctionCall", - "src": "23350:71:12" + "src": "23350:71:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23343:3:12" + "src": "23343:3:14" } ] }, @@ -13501,12 +13483,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "23456:5:12" + "src": "23456:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23463:4:12", + "src": "23463:4:14", "type": "", "value": "0x20" } @@ -13514,73 +13496,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23452:3:12" + "src": "23452:3:14" }, "nodeType": "YulFunctionCall", - "src": "23452:16:12" + "src": "23452:16:14" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "23470:3:12" + "src": "23470:3:14" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "23475:6:12" + "src": "23475:6:14" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "23430:21:12" + "src": "23430:21:14" }, "nodeType": "YulFunctionCall", - "src": "23430:52:12" + "src": "23430:52:14" }, "nodeType": "YulExpressionStatement", - "src": "23430:52:12" + "src": "23430:52:14" }, { "nodeType": "YulAssignment", - "src": "23491:46:12", + "src": "23491:46:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23502:3:12" + "src": "23502:3:14" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "23529:6:12" + "src": "23529:6:14" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "23507:21:12" + "src": "23507:21:14" }, "nodeType": "YulFunctionCall", - "src": "23507:29:12" + "src": "23507:29:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23498:3:12" + "src": "23498:3:14" }, "nodeType": "YulFunctionCall", - "src": "23498:39:12" + "src": "23498:39:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "23491:3:12" + "src": "23491:3:14" } ] } @@ -13592,13 +13574,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "23252:5:12", + "src": "23252:5:14", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "23259:3:12", + "src": "23259:3:14", "type": "" } ], @@ -13606,31 +13588,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "23267:3:12", + "src": "23267:3:14", "type": "" } ], - "src": "23179:364:12" + "src": "23179:364:14" }, { "body": { "nodeType": "YulBlock", - "src": "23667:195:12", + "src": "23667:195:14", "statements": [ { "nodeType": "YulAssignment", - "src": "23677:26:12", + "src": "23677:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23689:9:12" + "src": "23689:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23700:2:12", + "src": "23700:2:14", "type": "", "value": "32" } @@ -13638,16 +13620,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23685:3:12" + "src": "23685:3:14" }, "nodeType": "YulFunctionCall", - "src": "23685:18:12" + "src": "23685:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23677:4:12" + "src": "23677:4:14" } ] }, @@ -13659,12 +13641,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23724:9:12" + "src": "23724:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23735:1:12", + "src": "23735:1:14", "type": "", "value": "0" } @@ -13672,73 +13654,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23720:3:12" + "src": "23720:3:14" }, "nodeType": "YulFunctionCall", - "src": "23720:17:12" + "src": "23720:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23743:4:12" + "src": "23743:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23749:9:12" + "src": "23749:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "23739:3:12" + "src": "23739:3:14" }, "nodeType": "YulFunctionCall", - "src": "23739:20:12" + "src": "23739:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23713:6:12" + "src": "23713:6:14" }, "nodeType": "YulFunctionCall", - "src": "23713:47:12" + "src": "23713:47:14" }, "nodeType": "YulExpressionStatement", - "src": "23713:47:12" + "src": "23713:47:14" }, { "nodeType": "YulAssignment", - "src": "23769:86:12", + "src": "23769:86:14", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "23841:6:12" + "src": "23841:6:14" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "23850:4:12" + "src": "23850:4:14" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23777:63:12" + "src": "23777:63:14" }, "nodeType": "YulFunctionCall", - "src": "23777:78:12" + "src": "23777:78:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23769:4:12" + "src": "23769:4:14" } ] } @@ -13750,13 +13732,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "23639:9:12", + "src": "23639:9:14", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "23651:6:12", + "src": "23651:6:14", "type": "" } ], @@ -13764,75 +13746,75 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "23662:4:12", + "src": "23662:4:14", "type": "" } ], - "src": "23549:313:12" + "src": "23549:313:14" }, { "body": { "nodeType": "YulBlock", - "src": "23916:300:12", + "src": "23916:300:14", "statements": [ { "nodeType": "YulAssignment", - "src": "23926:25:12", + "src": "23926:25:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "23949:1:12" + "src": "23949:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "23931:17:12" + "src": "23931:17:14" }, "nodeType": "YulFunctionCall", - "src": "23931:20:12" + "src": "23931:20:14" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "23926:1:12" + "src": "23926:1:14" } ] }, { "nodeType": "YulAssignment", - "src": "23960:25:12", + "src": "23960:25:14", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "23983:1:12" + "src": "23983:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "23965:17:12" + "src": "23965:17:14" }, "nodeType": "YulFunctionCall", - "src": "23965:20:12" + "src": "23965:20:14" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "23960:1:12" + "src": "23960:1:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24158:22:12", + "src": "24158:22:14", "statements": [ { "expression": { @@ -13840,13 +13822,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24160:16:12" + "src": "24160:16:14" }, "nodeType": "YulFunctionCall", - "src": "24160:18:12" + "src": "24160:18:14" }, "nodeType": "YulExpressionStatement", - "src": "24160:18:12" + "src": "24160:18:14" } ] }, @@ -13859,106 +13841,106 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "24070:1:12" + "src": "24070:1:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "24063:6:12" + "src": "24063:6:14" }, "nodeType": "YulFunctionCall", - "src": "24063:9:12" + "src": "24063:9:14" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "24056:6:12" + "src": "24056:6:14" }, "nodeType": "YulFunctionCall", - "src": "24056:17:12" + "src": "24056:17:14" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24078:1:12" + "src": "24078:1:14" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "24085:66:12", + "src": "24085:66:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "x", "nodeType": "YulIdentifier", - "src": "24153:1:12" + "src": "24153:1:14" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "24081:3:12" + "src": "24081:3:14" }, "nodeType": "YulFunctionCall", - "src": "24081:74:12" + "src": "24081:74:14" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "24075:2:12" + "src": "24075:2:14" }, "nodeType": "YulFunctionCall", - "src": "24075:81:12" + "src": "24075:81:14" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "24052:3:12" + "src": "24052:3:14" }, "nodeType": "YulFunctionCall", - "src": "24052:105:12" + "src": "24052:105:14" }, "nodeType": "YulIf", - "src": "24049:131:12" + "src": "24049:131:14" }, { "nodeType": "YulAssignment", - "src": "24190:20:12", + "src": "24190:20:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24205:1:12" + "src": "24205:1:14" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24208:1:12" + "src": "24208:1:14" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "24201:3:12" + "src": "24201:3:14" }, "nodeType": "YulFunctionCall", - "src": "24201:9:12" + "src": "24201:9:14" }, "variableNames": [ { "name": "product", "nodeType": "YulIdentifier", - "src": "24190:7:12" + "src": "24190:7:14" } ] } @@ -13970,13 +13952,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "23899:1:12", + "src": "23899:1:14", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "23902:1:12", + "src": "23902:1:14", "type": "" } ], @@ -13984,75 +13966,75 @@ { "name": "product", "nodeType": "YulTypedName", - "src": "23908:7:12", + "src": "23908:7:14", "type": "" } ], - "src": "23868:348:12" + "src": "23868:348:14" }, { "body": { "nodeType": "YulBlock", - "src": "24266:261:12", + "src": "24266:261:14", "statements": [ { "nodeType": "YulAssignment", - "src": "24276:25:12", + "src": "24276:25:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24299:1:12" + "src": "24299:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24281:17:12" + "src": "24281:17:14" }, "nodeType": "YulFunctionCall", - "src": "24281:20:12" + "src": "24281:20:14" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24276:1:12" + "src": "24276:1:14" } ] }, { "nodeType": "YulAssignment", - "src": "24310:25:12", + "src": "24310:25:14", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24333:1:12" + "src": "24333:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24315:17:12" + "src": "24315:17:14" }, "nodeType": "YulFunctionCall", - "src": "24315:20:12" + "src": "24315:20:14" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24310:1:12" + "src": "24310:1:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24473:22:12", + "src": "24473:22:14", "statements": [ { "expression": { @@ -14060,13 +14042,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24475:16:12" + "src": "24475:16:14" }, "nodeType": "YulFunctionCall", - "src": "24475:18:12" + "src": "24475:18:14" }, "nodeType": "YulExpressionStatement", - "src": "24475:18:12" + "src": "24475:18:14" } ] }, @@ -14075,72 +14057,72 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "24394:1:12" + "src": "24394:1:14" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "24401:66:12", + "src": "24401:66:14", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24469:1:12" + "src": "24469:1:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24397:3:12" + "src": "24397:3:14" }, "nodeType": "YulFunctionCall", - "src": "24397:74:12" + "src": "24397:74:14" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "24391:2:12" + "src": "24391:2:14" }, "nodeType": "YulFunctionCall", - "src": "24391:81:12" + "src": "24391:81:14" }, "nodeType": "YulIf", - "src": "24388:107:12" + "src": "24388:107:14" }, { "nodeType": "YulAssignment", - "src": "24505:16:12", + "src": "24505:16:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24516:1:12" + "src": "24516:1:14" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24519:1:12" + "src": "24519:1:14" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24512:3:12" + "src": "24512:3:14" }, "nodeType": "YulFunctionCall", - "src": "24512:9:12" + "src": "24512:9:14" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "24505:3:12" + "src": "24505:3:14" } ] } @@ -14152,13 +14134,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "24253:1:12", + "src": "24253:1:14", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "24256:1:12", + "src": "24256:1:14", "type": "" } ], @@ -14166,48 +14148,48 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "24262:3:12", + "src": "24262:3:14", "type": "" } ], - "src": "24222:305:12" + "src": "24222:305:14" }, { "body": { "nodeType": "YulBlock", - "src": "24576:128:12", + "src": "24576:128:14", "statements": [ { "nodeType": "YulAssignment", - "src": "24586:33:12", + "src": "24586:33:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "24613:5:12" + "src": "24613:5:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24595:17:12" + "src": "24595:17:14" }, "nodeType": "YulFunctionCall", - "src": "24595:24:12" + "src": "24595:24:14" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "24586:5:12" + "src": "24586:5:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24647:22:12", + "src": "24647:22:14", "statements": [ { "expression": { @@ -14215,13 +14197,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24649:16:12" + "src": "24649:16:14" }, "nodeType": "YulFunctionCall", - "src": "24649:18:12" + "src": "24649:18:14" }, "nodeType": "YulExpressionStatement", - "src": "24649:18:12" + "src": "24649:18:14" } ] }, @@ -14230,12 +14212,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "24634:5:12" + "src": "24634:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24641:4:12", + "src": "24641:4:14", "type": "", "value": "0x00" } @@ -14243,28 +14225,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "24631:2:12" + "src": "24631:2:14" }, "nodeType": "YulFunctionCall", - "src": "24631:15:12" + "src": "24631:15:14" }, "nodeType": "YulIf", - "src": "24628:41:12" + "src": "24628:41:14" }, { "nodeType": "YulAssignment", - "src": "24678:20:12", + "src": "24678:20:14", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "24689:5:12" + "src": "24689:5:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24696:1:12", + "src": "24696:1:14", "type": "", "value": "1" } @@ -14272,16 +14254,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24685:3:12" + "src": "24685:3:14" }, "nodeType": "YulFunctionCall", - "src": "24685:13:12" + "src": "24685:13:14" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "24678:3:12" + "src": "24678:3:14" } ] } @@ -14293,7 +14275,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "24562:5:12", + "src": "24562:5:14", "type": "" } ], @@ -14301,16 +14283,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "24572:3:12", + "src": "24572:3:14", "type": "" } ], - "src": "24533:171:12" + "src": "24533:171:14" }, { "body": { "nodeType": "YulBlock", - "src": "24816:76:12", + "src": "24816:76:14", "statements": [ { "expression": { @@ -14320,12 +14302,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "24838:6:12" + "src": "24838:6:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24846:1:12", + "src": "24846:1:14", "type": "", "value": "0" } @@ -14333,16 +14315,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24834:3:12" + "src": "24834:3:14" }, "nodeType": "YulFunctionCall", - "src": "24834:14:12" + "src": "24834:14:14" }, { "hexValue": "537472696e67733a20686578206c656e67746820696e73756666696369656e74", "kind": "string", "nodeType": "YulLiteral", - "src": "24850:34:12", + "src": "24850:34:14", "type": "", "value": "Strings: hex length insufficient" } @@ -14350,13 +14332,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24827:6:12" + "src": "24827:6:14" }, "nodeType": "YulFunctionCall", - "src": "24827:58:12" + "src": "24827:58:14" }, "nodeType": "YulExpressionStatement", - "src": "24827:58:12" + "src": "24827:58:14" } ] }, @@ -14366,31 +14348,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "24808:6:12", + "src": "24808:6:14", "type": "" } ], - "src": "24710:182:12" + "src": "24710:182:14" }, { "body": { "nodeType": "YulBlock", - "src": "25044:220:12", + "src": "25044:220:14", "statements": [ { "nodeType": "YulAssignment", - "src": "25054:74:12", + "src": "25054:74:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25120:3:12" + "src": "25120:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25125:2:12", + "src": "25125:2:14", "type": "", "value": "32" } @@ -14398,16 +14380,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "25061:58:12" + "src": "25061:58:14" }, "nodeType": "YulFunctionCall", - "src": "25061:67:12" + "src": "25061:67:14" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25054:3:12" + "src": "25054:3:14" } ] }, @@ -14417,34 +14399,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25226:3:12" + "src": "25226:3:14" } ], "functionName": { "name": "store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", "nodeType": "YulIdentifier", - "src": "25137:88:12" + "src": "25137:88:14" }, "nodeType": "YulFunctionCall", - "src": "25137:93:12" + "src": "25137:93:14" }, "nodeType": "YulExpressionStatement", - "src": "25137:93:12" + "src": "25137:93:14" }, { "nodeType": "YulAssignment", - "src": "25239:19:12", + "src": "25239:19:14", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25250:3:12" + "src": "25250:3:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25255:2:12", + "src": "25255:2:14", "type": "", "value": "32" } @@ -14452,16 +14434,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25246:3:12" + "src": "25246:3:14" }, "nodeType": "YulFunctionCall", - "src": "25246:12:12" + "src": "25246:12:14" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "25239:3:12" + "src": "25239:3:14" } ] } @@ -14473,7 +14455,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "25032:3:12", + "src": "25032:3:14", "type": "" } ], @@ -14481,31 +14463,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "25040:3:12", + "src": "25040:3:14", "type": "" } ], - "src": "24898:366:12" + "src": "24898:366:14" }, { "body": { "nodeType": "YulBlock", - "src": "25441:248:12", + "src": "25441:248:14", "statements": [ { "nodeType": "YulAssignment", - "src": "25451:26:12", + "src": "25451:26:14", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25463:9:12" + "src": "25463:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25474:2:12", + "src": "25474:2:14", "type": "", "value": "32" } @@ -14513,16 +14495,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25459:3:12" + "src": "25459:3:14" }, "nodeType": "YulFunctionCall", - "src": "25459:18:12" + "src": "25459:18:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25451:4:12" + "src": "25451:4:14" } ] }, @@ -14534,12 +14516,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25498:9:12" + "src": "25498:9:14" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25509:1:12", + "src": "25509:1:14", "type": "", "value": "0" } @@ -14547,68 +14529,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25494:3:12" + "src": "25494:3:14" }, "nodeType": "YulFunctionCall", - "src": "25494:17:12" + "src": "25494:17:14" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25517:4:12" + "src": "25517:4:14" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25523:9:12" + "src": "25523:9:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25513:3:12" + "src": "25513:3:14" }, "nodeType": "YulFunctionCall", - "src": "25513:20:12" + "src": "25513:20:14" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25487:6:12" + "src": "25487:6:14" }, "nodeType": "YulFunctionCall", - "src": "25487:47:12" + "src": "25487:47:14" }, "nodeType": "YulExpressionStatement", - "src": "25487:47:12" + "src": "25487:47:14" }, { "nodeType": "YulAssignment", - "src": "25543:139:12", + "src": "25543:139:14", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25677:4:12" + "src": "25677:4:14" } ], "functionName": { "name": "abi_encode_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "25551:124:12" + "src": "25551:124:14" }, "nodeType": "YulFunctionCall", - "src": "25551:131:12" + "src": "25551:131:14" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25543:4:12" + "src": "25543:4:14" } ] } @@ -14620,7 +14602,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25421:9:12", + "src": "25421:9:14", "type": "" } ], @@ -14628,75 +14610,75 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25436:4:12", + "src": "25436:4:14", "type": "" } ], - "src": "25270:419:12" + "src": "25270:419:14" }, { "body": { "nodeType": "YulBlock", - "src": "25740:146:12", + "src": "25740:146:14", "statements": [ { "nodeType": "YulAssignment", - "src": "25750:25:12", + "src": "25750:25:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "25773:1:12" + "src": "25773:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "25755:17:12" + "src": "25755:17:14" }, "nodeType": "YulFunctionCall", - "src": "25755:20:12" + "src": "25755:20:14" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "25750:1:12" + "src": "25750:1:14" } ] }, { "nodeType": "YulAssignment", - "src": "25784:25:12", + "src": "25784:25:14", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "25807:1:12" + "src": "25807:1:14" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "25789:17:12" + "src": "25789:17:14" }, "nodeType": "YulFunctionCall", - "src": "25789:20:12" + "src": "25789:20:14" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "25784:1:12" + "src": "25784:1:14" } ] }, { "body": { "nodeType": "YulBlock", - "src": "25831:22:12", + "src": "25831:22:14", "statements": [ { "expression": { @@ -14704,13 +14686,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "25833:16:12" + "src": "25833:16:14" }, "nodeType": "YulFunctionCall", - "src": "25833:18:12" + "src": "25833:18:14" }, "nodeType": "YulExpressionStatement", - "src": "25833:18:12" + "src": "25833:18:14" } ] }, @@ -14719,54 +14701,54 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "25825:1:12" + "src": "25825:1:14" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "25828:1:12" + "src": "25828:1:14" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "25822:2:12" + "src": "25822:2:14" }, "nodeType": "YulFunctionCall", - "src": "25822:8:12" + "src": "25822:8:14" }, "nodeType": "YulIf", - "src": "25819:34:12" + "src": "25819:34:14" }, { "nodeType": "YulAssignment", - "src": "25863:17:12", + "src": "25863:17:14", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "25875:1:12" + "src": "25875:1:14" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "25878:1:12" + "src": "25878:1:14" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25871:3:12" + "src": "25871:3:14" }, "nodeType": "YulFunctionCall", - "src": "25871:9:12" + "src": "25871:9:14" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", - "src": "25863:4:12" + "src": "25863:4:14" } ] } @@ -14778,13 +14760,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "25726:1:12", + "src": "25726:1:14", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "25729:1:12", + "src": "25729:1:14", "type": "" } ], @@ -14792,16 +14774,16 @@ { "name": "diff", "nodeType": "YulTypedName", - "src": "25735:4:12", + "src": "25735:4:14", "type": "" } ], - "src": "25695:191:12" + "src": "25695:191:14" }, { "body": { "nodeType": "YulBlock", - "src": "25920:152:12", + "src": "25920:152:14", "statements": [ { "expression": { @@ -14809,14 +14791,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "25937:1:12", + "src": "25937:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25940:77:12", + "src": "25940:77:14", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -14824,13 +14806,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25930:6:12" + "src": "25930:6:14" }, "nodeType": "YulFunctionCall", - "src": "25930:88:12" + "src": "25930:88:14" }, "nodeType": "YulExpressionStatement", - "src": "25930:88:12" + "src": "25930:88:14" }, { "expression": { @@ -14838,14 +14820,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "26034:1:12", + "src": "26034:1:14", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26037:4:12", + "src": "26037:4:14", "type": "", "value": "0x31" } @@ -14853,13 +14835,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26027:6:12" + "src": "26027:6:14" }, "nodeType": "YulFunctionCall", - "src": "26027:15:12" + "src": "26027:15:14" }, "nodeType": "YulExpressionStatement", - "src": "26027:15:12" + "src": "26027:15:14" }, { "expression": { @@ -14867,14 +14849,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "26058:1:12", + "src": "26058:1:14", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26061:4:12", + "src": "26061:4:14", "type": "", "value": "0x24" } @@ -14882,107 +14864,113 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "26051:6:12" + "src": "26051:6:14" }, "nodeType": "YulFunctionCall", - "src": "26051:15:12" + "src": "26051:15:14" }, "nodeType": "YulExpressionStatement", - "src": "26051:15:12" + "src": "26051:15:14" } ] }, "name": "panic_error_0x31", "nodeType": "YulFunctionDefinition", - "src": "25892:180:12" + "src": "25892:180:14" } ] }, - "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_bool(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_IBEERC721_$1551_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_IBEERC721_$1551_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_IBEERC721_$1551_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_IBEERC721_$1551__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_IBEERC721_$1551_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x20)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_addresst_array$_t_uint256_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_array$_t_uint256_$dyn_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_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 abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\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 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_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d(memPtr) {\n\n mstore(add(memPtr, 0), \"Open status is same\")\n\n }\n\n function abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 19)\n store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d__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_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b(memPtr) {\n\n mstore(add(memPtr, 0), \"AccessControl: can only renounce\")\n\n mstore(add(memPtr, 32), \" roles for self\")\n\n }\n\n function abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b__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_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f(memPtr) {\n\n mstore(add(memPtr, 0), \"NFT distributor is not open\")\n\n }\n\n function abi_encode_t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f__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_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08(memPtr) {\n\n mstore(add(memPtr, 0), \"Mintable count is not enough\")\n\n }\n\n function abi_encode_t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08__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_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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_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 abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\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_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value1, tail)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874(memPtr) {\n\n mstore(add(memPtr, 0), \"AccessControl: account \")\n\n }\n\n function abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 23)\n store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874(pos)\n end := add(pos, 23)\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69(memPtr) {\n\n mstore(add(memPtr, 0), \" is missing role \")\n\n }\n\n function abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 17)\n store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69(pos)\n end := add(pos, 17)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_t_string_memory_ptr_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n pos := abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function checked_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 decrement_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0x00) { panic_error_0x11() }\n ret := sub(value, 1)\n }\n\n function store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2(memPtr) {\n\n mstore(add(memPtr, 0), \"Strings: hex length insufficient\")\n\n }\n\n function abi_encode_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2__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_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack( tail)\n\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 panic_error_0x31() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n\n}\n", - "id": 12, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes4(value) -> cleaned {\n cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n }\n\n function validator_revert_t_bytes4(value) {\n if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes4(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_bool(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint160_to_t_uint160(value) -> converted {\n converted := cleanup_t_uint160(identity(cleanup_t_uint160(value)))\n }\n\n function convert_t_uint160_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_uint160(value)\n }\n\n function convert_t_contract$_IBEERC721_$2569_to_t_address(value) -> converted {\n converted := convert_t_uint160_to_t_address(value)\n }\n\n function abi_encode_t_contract$_IBEERC721_$2569_to_t_address_fromStack(value, pos) {\n mstore(pos, convert_t_contract$_IBEERC721_$2569_to_t_address(value))\n }\n\n function abi_encode_tuple_t_contract$_IBEERC721_$2569__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_contract$_IBEERC721_$2569_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n revert(0, 0)\n }\n\n function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n revert(0, 0)\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_calldata_ptr(offset, end) -> arrayPos, length {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n length := calldataload(offset)\n if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n arrayPos := add(offset, 0x20)\n if gt(add(arrayPos, mul(length, 0x20)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n }\n\n function abi_decode_tuple_t_addresst_array$_t_uint256_$dyn_calldata_ptr(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1, value2 := abi_decode_t_array$_t_uint256_$dyn_calldata_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_bytes32t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_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 abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\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 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_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f(memPtr) {\n\n mstore(add(memPtr, 0), \"NFT distributor is not open\")\n\n }\n\n function abi_encode_t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f__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_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08(memPtr) {\n\n mstore(add(memPtr, 0), \"Mintable count is not enough\")\n\n }\n\n function abi_encode_t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08__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_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function abi_encode_tuple_t_address_t_uint256__to_t_address_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value1, add(headStart, 32))\n\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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_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 abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n // uint256[]\n function abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_array$_t_uint256_$dyn_memory_ptr(length))\n let dst := array\n\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_fromMemory(elementPos, end))\n dst := add(dst, 0x20)\n }\n }\n\n // uint256[]\n function abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_array$_t_uint256_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n mstore(add(headStart, 32), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value1, tail)\n\n }\n\n function store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d(memPtr) {\n\n mstore(add(memPtr, 0), \"Open status is same\")\n\n }\n\n function abi_encode_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 19)\n store_literal_in_memory_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d__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_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b(memPtr) {\n\n mstore(add(memPtr, 0), \"AccessControl: can only renounce\")\n\n mstore(add(memPtr, 32), \" roles for self\")\n\n }\n\n function abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b__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_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n updated_pos := pos\n }\n\n function store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874(memPtr) {\n\n mstore(add(memPtr, 0), \"AccessControl: account \")\n\n }\n\n function abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 23)\n store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874(pos)\n end := add(pos, 23)\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69(memPtr) {\n\n mstore(add(memPtr, 0), \" is missing role \")\n\n }\n\n function abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 17)\n store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69(pos)\n end := add(pos, 17)\n }\n\n function abi_encode_tuple_packed_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_t_string_memory_ptr_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n pos := abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0, pos)\n\n pos := abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function checked_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 decrement_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0x00) { panic_error_0x11() }\n ret := sub(value, 1)\n }\n\n function store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2(memPtr) {\n\n mstore(add(memPtr, 0), \"Strings: hex length insufficient\")\n\n }\n\n function abi_encode_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2__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_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack( tail)\n\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 panic_error_0x31() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n\n}\n", + "id": 14, "language": "Yul", "name": "#utility.yul" } ], - "sourceMap": "165:7519:11:-:0;;;515:4;494:25;;;;;;;;;;;;;;;;;;;;1122:552;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1238:46;258:24;2072:4:0;1265:18:11;;1238:13;;;:46;;:::i;:::-;1362:44;2072:4:0;1373:18:11;;1393:12;:10;;;:12;;:::i;:::-;1362:10;;;:44;;:::i;:::-;1472:9;1467:109;1491:14;:21;1487:1;:25;1467:109;;;1527:42;258:24;1551:14;1566:1;1551:17;;;;;;;;:::i;:::-;;;;;;;;1527:10;;;:42;;:::i;:::-;1514:3;;;;:::i;:::-;;;1467:109;;;;1658:10;1642:3;;:27;;;;;;;;;;;;;;;;;;1122:552;;165:7519;;6492:247:0;6575:25;6603:18;6616:4;6603:12;;;:18;;:::i;:::-;6575:46;;6656:9;6631:6;:12;6638:4;6631:12;;;;;;;;;;;:22;;:34;;;;6722:9;6703:17;6697:4;6680:52;;;;;;;;;;6565:174;6492:247;;:::o;640:96:5:-;693:7;719:10;712:17;;640:96;:::o;6257:110:0:-;6335:25;6346:4;6352:7;6335:10;;;:25;;:::i;:::-;6257:110;;:::o;4008:129::-;4082:7;4108:6;:12;4115:4;4108:12;;;;;;;;;;;:22;;;4101:29;;4008:129;;;:::o;1978:166:1:-;2065:31;2082:4;2088:7;2065:16;;;;;:31;;:::i;:::-;2106;2129:7;2106:12;:18;2119:4;2106:18;;;;;;;;;;;:22;;;;;;:31;;;;:::i;:::-;;1978:166;;:::o;6861:233:0:-;6944:22;6952:4;6958:7;6944;;;:22;;:::i;:::-;6939:149;;7014:4;6982:6;:12;6989:4;6982:12;;;;;;;;;;;:20;;:29;7003:7;6982:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;7064:12;:10;;;:12;;:::i;:::-;7037:40;;7055:7;7037:40;;7049:4;7037:40;;;;;;;;;;6939:149;6861:233;;:::o;7612:150:9:-;7682:4;7705:50;7710:3;:10;;7746:5;7730:23;;7722:32;;7705:4;;;:50;;:::i;:::-;7698:57;;7612:150;;;;:::o;2909:145:0:-;2995:4;3018:6;:12;3025:4;3018:12;;;;;;;;;;;:20;;:29;3039:7;3018:29;;;;;;;;;;;;;;;;;;;;;;;;;3011:36;;2909:145;;;;:::o;1697:404:9:-;1760:4;1781:21;1791:3;1796:5;1781:9;;;:21;;:::i;:::-;1776:319;;1818:3;:11;;1835:5;1818:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1998:3;:11;;:18;;;;1976:3;:12;;:19;1989:5;1976:19;;;;;;;;;;;:40;;;;2037:4;2030:11;;;;1776:319;2079:5;2072:12;;1697:404;;;;;:::o;3738:127::-;3811:4;3857:1;3834:3;:12;;:19;3847:5;3834:19;;;;;;;;;;;;:24;;3827:31;;3738:127;;;;:::o;7:75:12:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:143::-;753:5;784:6;778:13;769:22;;800:33;827:5;800:33;:::i;:::-;696:143;;;;:::o;845:117::-;954:1;951;944:12;968:102;1009:6;1060:2;1056:7;1051:2;1044:5;1040:14;1036:28;1026:38;;968:102;;;:::o;1076:180::-;1124:77;1121:1;1114:88;1221:4;1218:1;1211:15;1245:4;1242:1;1235:15;1262:281;1345:27;1367:4;1345:27;:::i;:::-;1337:6;1333:40;1475:6;1463:10;1460:22;1439:18;1427:10;1424:34;1421:62;1418:88;;;1486:18;;:::i;:::-;1418:88;1526:10;1522:2;1515:22;1305:238;1262:281;;:::o;1549:129::-;1583:6;1610:20;;:::i;:::-;1600:30;;1639:33;1667:4;1659:6;1639:33;:::i;:::-;1549:129;;;:::o;1684:311::-;1761:4;1851:18;1843:6;1840:30;1837:56;;;1873:18;;:::i;:::-;1837:56;1923:4;1915:6;1911:17;1903:25;;1983:4;1977;1973:15;1965:23;;1684:311;;;:::o;2001:117::-;2110:1;2107;2100:12;2141:732;2248:5;2273:81;2289:64;2346:6;2289:64;:::i;:::-;2273:81;:::i;:::-;2264:90;;2374:5;2403:6;2396:5;2389:21;2437:4;2430:5;2426:16;2419:23;;2490:4;2482:6;2478:17;2470:6;2466:30;2519:3;2511:6;2508:15;2505:122;;;2538:79;;:::i;:::-;2505:122;2653:6;2636:231;2670:6;2665:3;2662:15;2636:231;;;2745:3;2774:48;2818:3;2806:10;2774:48;:::i;:::-;2769:3;2762:61;2852:4;2847:3;2843:14;2836:21;;2712:155;2696:4;2691:3;2687:14;2680:21;;2636:231;;;2640:21;2254:619;;2141:732;;;;;:::o;2896:385::-;2978:5;3027:3;3020:4;3012:6;3008:17;3004:27;2994:122;;3035:79;;:::i;:::-;2994:122;3145:6;3139:13;3170:105;3271:3;3263:6;3256:4;3248:6;3244:17;3170:105;:::i;:::-;3161:114;;2984:297;2896:385;;;;:::o;3287:710::-;3391:6;3399;3448:2;3436:9;3427:7;3423:23;3419:32;3416:119;;;3454:79;;:::i;:::-;3416:119;3574:1;3599:64;3655:7;3646:6;3635:9;3631:22;3599:64;:::i;:::-;3589:74;;3545:128;3733:2;3722:9;3718:18;3712:25;3764:18;3756:6;3753:30;3750:117;;;3786:79;;:::i;:::-;3750:117;3891:89;3972:7;3963:6;3952:9;3948:22;3891:89;:::i;:::-;3881:99;;3683:307;3287:710;;;;;:::o;4003:180::-;4051:77;4048:1;4041:88;4148:4;4145:1;4138:15;4172:4;4169:1;4162:15;4189:180;4237:77;4234:1;4227:88;4334:4;4331:1;4324:15;4358:4;4355:1;4348:15;4375:77;4412:7;4441:5;4430:16;;4375:77;;;:::o;4458:233::-;4497:3;4520:24;4538:5;4520:24;:::i;:::-;4511:33;;4566:66;4559:5;4556:77;4553:103;;;4636:18;;:::i;:::-;4553:103;4683:1;4676:5;4672:13;4665:20;;4458:233;;;:::o;165:7519:11:-;;;;;;;", - "deployedSourceMap": "165:7519:11:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;634:212:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6741:941:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5497:649;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4008:129:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2166:171:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4387:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5404:214;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;494:25:11;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;436:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;220:62;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4612:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1431:151:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2909:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2881:1044:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2027:49:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;316:48:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1750:140:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4766:147:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;390:41:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;634:212:1;719:4;757:42;742:57;;;:11;:57;;;;:97;;;;803:36;827:11;803:23;:36::i;:::-;742:97;735:104;;634:212;;;:::o;6741:941:11:-;6814:16;6891:21;6915:11;:18;6927:5;6915:18;;;;;;;;;;;;;;;6891:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7036:31;7084:4;:11;7070:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7036:60;;7145:13;7214:9;7209:398;7233:4;:11;7229:1;:15;7209:398;;;7309:13;7325:4;7330:1;7325:7;;;;;;;;:::i;:::-;;;;;;;;7309:23;;7395:9;:16;7405:5;7395:16;;;;;;;;;;;;;;;;;;;;;7390:211;;7531:5;7507:14;7522:5;7507:21;;;;;;;;:::i;:::-;;;;;;;:29;;;;;7585:7;;;;;:::i;:::-;;;;7390:211;7251:356;7246:3;;;;;:::i;:::-;;;;7209:398;;;;7663:14;7656:21;;;;;6741:941;;;:::o;5497:649::-;5559:7;5627:21;5651:11;:18;5663:5;5651:18;;;;;;;;;;;;;;;5627:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5707:13;5776:9;5771:314;5795:4;:11;5791:1;:15;5771:314;;;5871:14;5888:4;5893:1;5888:7;;;;;;;;:::i;:::-;;;;;;;;5871:24;;5958:9;:17;5968:6;5958:17;;;;;;;;;;;;;;;;;;;;;5953:126;;6063:7;;;;;:::i;:::-;;;;5953:126;5813:272;5808:3;;;;;:::i;:::-;;;;5771:314;;;;6136:5;6129:12;;;;5497:649;;;:::o;4008:129:0:-;4082:7;4108:6;:12;4115:4;4108:12;;;;;;;;;;;:22;;;4101:29;;4008:129;;;:::o;2166:171:11:-;2021:37;258:24;2045:12;:10;:12::i;:::-;2021:10;:37::i;:::-;2249:5:::1;2239:15;;:6;;;;;;;;;;;:15;;;;2231:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;2293:5;2284:6;;:14;;;;;;;;;;;;;;;;;;2326:5;2309:23;;;;;;;;;;;;2166:171:::0;:::o;4387:145:0:-;4470:18;4483:4;4470:12;:18::i;:::-;2505:30;2516:4;2522:12;:10;:12::i;:::-;2505:10;:30::i;:::-;4500:25:::1;4511:4;4517:7;4500:10;:25::i;:::-;4387:145:::0;;;:::o;5404:214::-;5510:12;:10;:12::i;:::-;5499:23;;:7;:23;;;5491:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;5585:26;5597:4;5603:7;5585:11;:26::i;:::-;5404:214;;:::o;494:25:11:-;;;;;;;;;;;;;:::o;436:20::-;;;;;;;;;;;;;:::o;220:62::-;258:24;220:62;:::o;4612:317::-;2021:37;258:24;2045:12;:10;:12::i;:::-;2021:10;:37::i;:::-;4760:9:::1;4755:170;4779:7;;:14;;4775:1;:18;4755:170;;;4883:11;:18;4895:5;4883:18;;;;;;;;;;;;;;;4907:7;;4915:1;4907:10;;;;;;;:::i;:::-;;;;;;;;4883:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4795:3;;;;;:::i;:::-;;;;4755:170;;;;4612:317:::0;;;:::o;1431:151:1:-;1521:7;1547:28;1569:5;1547:12;:18;1560:4;1547:18;;;;;;;;;;;:21;;:28;;;;:::i;:::-;1540:35;;1431:151;;;;:::o;2909:145:0:-;2995:4;3018:6;:12;3025:4;3018:12;;;;;;;;;;;:20;;:29;3039:7;3018:29;;;;;;;;;;;;;;;;;;;;;;;;;3011:36;;2909:145;;;;:::o;2881:1044:11:-;2021:37;258:24;2045:12;:10;:12::i;:::-;2021:10;:37::i;:::-;2966:6:::1;;;;;;;;;;;2958:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3076:23;3093:5;3076:16;:23::i;:::-;3067:5;:32;;3059:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3184:21;3208:11;:18;3220:5;3208:18;;;;;;;;;;;;;;;3184:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3260:13;3283:26:::0;3326:5:::1;3312:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3283:49;;3386:9;3381:366;3405:4;:11;3401:1;:15;3381:366;;;3431:14;3448:4;3453:1;3448:7;;;;;;;;:::i;:::-;;;;;;;;3431:24;;3506:9;:17;3516:6;3506:17;;;;;;;;;;;;;;;;;;;;;3505:18;:35;;;;;3535:5;3527;:13;3505:35;3501:240;;;3629:6;3610:9;3620:5;3610:16;;;;;;;;:::i;:::-;;;;;;;:25;;;::::0;::::1;3665:4;3645:9;:17;3655:6;3645:17;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;3725:7;;;;;:::i;:::-;;;;3501:240;3423:324;3418:3;;;;;:::i;:::-;;;;3381:366;;;;3752:24;3779:3;;;;;;;;;;;:13;;;3793:5;3800;3779:27;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3752:54;;3895:3;;;;;;;;;;;3873:47;;3880:5;3873:47;;;3901:9;3912:7;3873:47;;;;;;;:::i;:::-;;;;;;;;2952:973;;;;2881:1044:::0;;:::o;2027:49:0:-;2072:4;2027:49;;;:::o;316:48:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1750:140:1:-;1830:7;1856:27;:12;:18;1869:4;1856:18;;;;;;;;;;;:25;:27::i;:::-;1849:34;;1750:140;;;:::o;4766:147:0:-;4850:18;4863:4;4850:12;:18::i;:::-;2505:30;2516:4;2522:12;:10;:12::i;:::-;2505:10;:30::i;:::-;4880:26:::1;4892:4;4898:7;4880:11;:26::i;:::-;4766:147:::0;;;:::o;390:41:11:-;;;;;;;;;;;;;;;;;;;;;;:::o;6861:233:0:-;6944:22;6952:4;6958:7;6944;:22::i;:::-;6939:149;;7014:4;6982:6;:12;6989:4;6982:12;;;;;;;;;;;:20;;:29;7003:7;6982:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;7064:12;:10;:12::i;:::-;7037:40;;7055:7;7037:40;;7049:4;7037:40;;;;;;;;;;6939:149;6861:233;;:::o;7612:150:9:-;7682:4;7705:50;7710:3;:10;;7746:5;7730:23;;7722:32;;7705:4;:50::i;:::-;7698:57;;7612:150;;;;:::o;2620:202:0:-;2705:4;2743:32;2728:47;;;:11;:47;;;;:87;;;;2779:36;2803:11;2779:23;:36::i;:::-;2728:87;2721:94;;2620:202;;;:::o;640:96:5:-;693:7;719:10;712:17;;640:96;:::o;3335:492:0:-;3423:22;3431:4;3437:7;3423;:22::i;:::-;3418:403;;3606:41;3634:7;3606:41;;3644:2;3606:19;:41::i;:::-;3718:38;3746:4;3738:13;;3753:2;3718:19;:38::i;:::-;3513:265;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3461:349;;;;;;;;;;;:::i;:::-;;;;;;;;3418:403;3335:492;;:::o;1978:166:1:-;2065:31;2082:4;2088:7;2065:16;:31::i;:::-;2106;2129:7;2106:12;:18;2119:4;2106:18;;;;;;;;;;;:22;;:31;;;;:::i;:::-;;1978:166;;:::o;2233:171::-;2321:32;2339:4;2345:7;2321:17;:32::i;:::-;2363:34;2389:7;2363:12;:18;2376:4;2363:18;;;;;;;;;;;:25;;:34;;;;:::i;:::-;;2233:171;;:::o;8870:156:9:-;8944:7;8994:22;8998:3;:10;;9010:5;8994:3;:22::i;:::-;8986:31;;8963:56;;8870:156;;;;:::o;8413:115::-;8476:7;8502:19;8510:3;:10;;8502:7;:19::i;:::-;8495:26;;8413:115;;;:::o;1697:404::-;1760:4;1781:21;1791:3;1796:5;1781:9;:21::i;:::-;1776:319;;1818:3;:11;;1835:5;1818:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1998:3;:11;;:18;;;;1976:3;:12;;:19;1989:5;1976:19;;;;;;;;;;;:40;;;;2037:4;2030:11;;;;1776:319;2079:5;2072:12;;1697:404;;;;;:::o;829:155:7:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;1588:441:6:-;1663:13;1688:19;1733:1;1724:6;1720:1;:10;;;;:::i;:::-;:14;;;;:::i;:::-;1710:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1688:47;;1745:15;:6;1752:1;1745:9;;;;;;;;:::i;:::-;;;;;:15;;;;;;;;;;;1770;:6;1777:1;1770:9;;;;;;;;:::i;:::-;;;;;:15;;;;;;;;;;;1800:9;1825:1;1816:6;1812:1;:10;;;;:::i;:::-;:14;;;;:::i;:::-;1800:26;;1795:132;1832:1;1828;:5;1795:132;;;1866:12;1887:3;1879:5;:11;1866:25;;;;;;;:::i;:::-;;;;;1854:6;1861:1;1854:9;;;;;;;;:::i;:::-;;;;;:37;;;;;;;;;;;1915:1;1905:11;;;;;1835:3;;;;:::i;:::-;;;1795:132;;;;1953:1;1944:5;:10;1936:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;2015:6;2001:21;;;1588:441;;;;:::o;7219:234:0:-;7302:22;7310:4;7316:7;7302;:22::i;:::-;7298:149;;;7372:5;7340:6;:12;7347:4;7340:12;;;;;;;;;;;:20;;:29;7361:7;7340:29;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;7423:12;:10;:12::i;:::-;7396:40;;7414:7;7396:40;;7408:4;7396:40;;;;;;;;;;7298:149;7219:234;;:::o;7930:156:9:-;8003:4;8026:53;8034:3;:10;;8070:5;8054:23;;8046:32;;8026:7;:53::i;:::-;8019:60;;7930:156;;;;:::o;4395:118::-;4462:7;4488:3;:11;;4500:5;4488:18;;;;;;;;:::i;:::-;;;;;;;;;;4481:25;;4395:118;;;;:::o;3946:107::-;4002:7;4028:3;:11;;:18;;;;4021:25;;3946:107;;;:::o;3738:127::-;3811:4;3857:1;3834:3;:12;;:19;3847:5;3834:19;;;;;;;;;;;;:24;;3827:31;;3738:127;;;;:::o;2269:1388::-;2335:4;2451:18;2472:3;:12;;:19;2485:5;2472:19;;;;;;;;;;;;2451:40;;2520:1;2506:10;:15;2502:1149;;2875:21;2912:1;2899:10;:14;;;;:::i;:::-;2875:38;;2927:17;2968:1;2947:3;:11;;:18;;;;:22;;;;:::i;:::-;2927:42;;3001:13;2988:9;:26;2984:398;;3034:17;3054:3;:11;;3066:9;3054:22;;;;;;;;:::i;:::-;;;;;;;;;;3034:42;;3205:9;3176:3;:11;;3188:13;3176:26;;;;;;;;:::i;:::-;;;;;;;;;:38;;;;3314:10;3288:3;:12;;:23;3301:9;3288:23;;;;;;;;;;;:36;;;;3016:366;2984:398;3460:3;:11;;:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3552:3;:12;;:19;3565:5;3552:19;;;;;;;;;;;3545:26;;;3593:4;3586:11;;;;;;;2502:1149;3635:5;3628:12;;;2269:1388;;;;;:::o;7:75:12:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:126::-;1555:7;1595:42;1588:5;1584:54;1573:65;;1518:126;;;:::o;1650:96::-;1687:7;1716:24;1734:5;1716:24;:::i;:::-;1705:35;;1650:96;;;:::o;1752:122::-;1825:24;1843:5;1825:24;:::i;:::-;1818:5;1815:35;1805:63;;1864:1;1861;1854:12;1805:63;1752:122;:::o;1880:139::-;1926:5;1964:6;1951:20;1942:29;;1980:33;2007:5;1980:33;:::i;:::-;1880:139;;;;:::o;2025:329::-;2084:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:119;;;2139:79;;:::i;:::-;2101:119;2259:1;2284:53;2329:7;2320:6;2309:9;2305:22;2284:53;:::i;:::-;2274:63;;2230:117;2025:329;;;;:::o;2360:114::-;2427:6;2461:5;2455:12;2445:22;;2360:114;;;:::o;2480:184::-;2579:11;2613:6;2608:3;2601:19;2653:4;2648:3;2644:14;2629:29;;2480:184;;;;:::o;2670:132::-;2737:4;2760:3;2752:11;;2790:4;2785:3;2781:14;2773:22;;2670:132;;;:::o;2808:77::-;2845:7;2874:5;2863:16;;2808:77;;;:::o;2891:108::-;2968:24;2986:5;2968:24;:::i;:::-;2963:3;2956:37;2891:108;;:::o;3005:179::-;3074:10;3095:46;3137:3;3129:6;3095:46;:::i;:::-;3173:4;3168:3;3164:14;3150:28;;3005:179;;;;:::o;3190:113::-;3260:4;3292;3287:3;3283:14;3275:22;;3190:113;;;:::o;3339:732::-;3458:3;3487:54;3535:5;3487:54;:::i;:::-;3557:86;3636:6;3631:3;3557:86;:::i;:::-;3550:93;;3667:56;3717:5;3667:56;:::i;:::-;3746:7;3777:1;3762:284;3787:6;3784:1;3781:13;3762:284;;;3863:6;3857:13;3890:63;3949:3;3934:13;3890:63;:::i;:::-;3883:70;;3976:60;4029:6;3976:60;:::i;:::-;3966:70;;3822:224;3809:1;3806;3802:9;3797:14;;3762:284;;;3766:14;4062:3;4055:10;;3463:608;;;3339:732;;;;:::o;4077:373::-;4220:4;4258:2;4247:9;4243:18;4235:26;;4307:9;4301:4;4297:20;4293:1;4282:9;4278:17;4271:47;4335:108;4438:4;4429:6;4335:108;:::i;:::-;4327:116;;4077:373;;;;:::o;4456:118::-;4543:24;4561:5;4543:24;:::i;:::-;4538:3;4531:37;4456:118;;:::o;4580:222::-;4673:4;4711:2;4700:9;4696:18;4688:26;;4724:71;4792:1;4781:9;4777:17;4768:6;4724:71;:::i;:::-;4580:222;;;;:::o;4808:77::-;4845:7;4874:5;4863:16;;4808:77;;;:::o;4891:122::-;4964:24;4982:5;4964:24;:::i;:::-;4957:5;4954:35;4944:63;;5003:1;5000;4993:12;4944:63;4891:122;:::o;5019:139::-;5065:5;5103:6;5090:20;5081:29;;5119:33;5146:5;5119:33;:::i;:::-;5019:139;;;;:::o;5164:329::-;5223:6;5272:2;5260:9;5251:7;5247:23;5243:32;5240:119;;;5278:79;;:::i;:::-;5240:119;5398:1;5423:53;5468:7;5459:6;5448:9;5444:22;5423:53;:::i;:::-;5413:63;;5369:117;5164:329;;;;:::o;5499:118::-;5586:24;5604:5;5586:24;:::i;:::-;5581:3;5574:37;5499:118;;:::o;5623:222::-;5716:4;5754:2;5743:9;5739:18;5731:26;;5767:71;5835:1;5824:9;5820:17;5811:6;5767:71;:::i;:::-;5623:222;;;;:::o;5851:116::-;5921:21;5936:5;5921:21;:::i;:::-;5914:5;5911:32;5901:60;;5957:1;5954;5947:12;5901:60;5851:116;:::o;5973:133::-;6016:5;6054:6;6041:20;6032:29;;6070:30;6094:5;6070:30;:::i;:::-;5973:133;;;;:::o;6112:323::-;6168:6;6217:2;6205:9;6196:7;6192:23;6188:32;6185:119;;;6223:79;;:::i;:::-;6185:119;6343:1;6368:50;6410:7;6401:6;6390:9;6386:22;6368:50;:::i;:::-;6358:60;;6314:114;6112:323;;;;:::o;6441:474::-;6509:6;6517;6566:2;6554:9;6545:7;6541:23;6537:32;6534:119;;;6572:79;;:::i;:::-;6534:119;6692:1;6717:53;6762:7;6753:6;6742:9;6738:22;6717:53;:::i;:::-;6707:63;;6663:117;6819:2;6845:53;6890:7;6881:6;6870:9;6866:22;6845:53;:::i;:::-;6835:63;;6790:118;6441:474;;;;;:::o;6921:60::-;6949:3;6970:5;6963:12;;6921:60;;;:::o;6987:142::-;7037:9;7070:53;7088:34;7097:24;7115:5;7097:24;:::i;:::-;7088:34;:::i;:::-;7070:53;:::i;:::-;7057:66;;6987:142;;;:::o;7135:126::-;7185:9;7218:37;7249:5;7218:37;:::i;:::-;7205:50;;7135:126;;;:::o;7267:144::-;7335:9;7368:37;7399:5;7368:37;:::i;:::-;7355:50;;7267:144;;;:::o;7417:167::-;7522:55;7571:5;7522:55;:::i;:::-;7517:3;7510:68;7417:167;;:::o;7590:258::-;7701:4;7739:2;7728:9;7724:18;7716:26;;7752:89;7838:1;7827:9;7823:17;7814:6;7752:89;:::i;:::-;7590:258;;;;:::o;7854:117::-;7963:1;7960;7953:12;7977:117;8086:1;8083;8076:12;8100:117;8209:1;8206;8199:12;8240:568;8313:8;8323:6;8373:3;8366:4;8358:6;8354:17;8350:27;8340:122;;8381:79;;:::i;:::-;8340:122;8494:6;8481:20;8471:30;;8524:18;8516:6;8513:30;8510:117;;;8546:79;;:::i;:::-;8510:117;8660:4;8652:6;8648:17;8636:29;;8714:3;8706:4;8698:6;8694:17;8684:8;8680:32;8677:41;8674:128;;;8721:79;;:::i;:::-;8674:128;8240:568;;;;;:::o;8814:704::-;8909:6;8917;8925;8974:2;8962:9;8953:7;8949:23;8945:32;8942:119;;;8980:79;;:::i;:::-;8942:119;9100:1;9125:53;9170:7;9161:6;9150:9;9146:22;9125:53;:::i;:::-;9115:63;;9071:117;9255:2;9244:9;9240:18;9227:32;9286:18;9278:6;9275:30;9272:117;;;9308:79;;:::i;:::-;9272:117;9421:80;9493:7;9484:6;9473:9;9469:22;9421:80;:::i;:::-;9403:98;;;;9198:313;8814:704;;;;;:::o;9524:122::-;9597:24;9615:5;9597:24;:::i;:::-;9590:5;9587:35;9577:63;;9636:1;9633;9626:12;9577:63;9524:122;:::o;9652:139::-;9698:5;9736:6;9723:20;9714:29;;9752:33;9779:5;9752:33;:::i;:::-;9652:139;;;;:::o;9797:474::-;9865:6;9873;9922:2;9910:9;9901:7;9897:23;9893:32;9890:119;;;9928:79;;:::i;:::-;9890:119;10048:1;10073:53;10118:7;10109:6;10098:9;10094:22;10073:53;:::i;:::-;10063:63;;10019:117;10175:2;10201:53;10246:7;10237:6;10226:9;10222:22;10201:53;:::i;:::-;10191:63;;10146:118;9797:474;;;;;:::o;10277:118::-;10364:24;10382:5;10364:24;:::i;:::-;10359:3;10352:37;10277:118;;:::o;10401:222::-;10494:4;10532:2;10521:9;10517:18;10509:26;;10545:71;10613:1;10602:9;10598:17;10589:6;10545:71;:::i;:::-;10401:222;;;;:::o;10629:474::-;10697:6;10705;10754:2;10742:9;10733:7;10729:23;10725:32;10722:119;;;10760:79;;:::i;:::-;10722:119;10880:1;10905:53;10950:7;10941:6;10930:9;10926:22;10905:53;:::i;:::-;10895:63;;10851:117;11007:2;11033:53;11078:7;11069:6;11058:9;11054:22;11033:53;:::i;:::-;11023:63;;10978:118;10629:474;;;;;:::o;11109:329::-;11168:6;11217:2;11205:9;11196:7;11192:23;11188:32;11185:119;;;11223:79;;:::i;:::-;11185:119;11343:1;11368:53;11413:7;11404:6;11393:9;11389:22;11368:53;:::i;:::-;11358:63;;11314:117;11109:329;;;;:::o;11444:180::-;11492:77;11489:1;11482:88;11589:4;11586:1;11579:15;11613:4;11610:1;11603:15;11630:180;11678:77;11675:1;11668:88;11775:4;11772:1;11765:15;11799:4;11796:1;11789:15;11816:180;11864:77;11861:1;11854:88;11961:4;11958:1;11951:15;11985:4;11982:1;11975:15;12002:233;12041:3;12064:24;12082:5;12064:24;:::i;:::-;12055:33;;12110:66;12103:5;12100:77;12097:103;;;12180:18;;:::i;:::-;12097:103;12227:1;12220:5;12216:13;12209:20;;12002:233;;;:::o;12241:169::-;12325:11;12359:6;12354:3;12347:19;12399:4;12394:3;12390:14;12375:29;;12241:169;;;;:::o;12416:::-;12556:21;12552:1;12544:6;12540:14;12533:45;12416:169;:::o;12591:366::-;12733:3;12754:67;12818:2;12813:3;12754:67;:::i;:::-;12747:74;;12830:93;12919:3;12830:93;:::i;:::-;12948:2;12943:3;12939:12;12932:19;;12591:366;;;:::o;12963:419::-;13129:4;13167:2;13156:9;13152:18;13144:26;;13216:9;13210:4;13206:20;13202:1;13191:9;13187:17;13180:47;13244:131;13370:4;13244:131;:::i;:::-;13236:139;;12963:419;;;:::o;13388:234::-;13528:34;13524:1;13516:6;13512:14;13505:58;13597:17;13592:2;13584:6;13580:15;13573:42;13388:234;:::o;13628:366::-;13770:3;13791:67;13855:2;13850:3;13791:67;:::i;:::-;13784:74;;13867:93;13956:3;13867:93;:::i;:::-;13985:2;13980:3;13976:12;13969:19;;13628:366;;;:::o;14000:419::-;14166:4;14204:2;14193:9;14189:18;14181:26;;14253:9;14247:4;14243:20;14239:1;14228:9;14224:17;14217:47;14281:131;14407:4;14281:131;:::i;:::-;14273:139;;14000:419;;;:::o;14425:177::-;14565:29;14561:1;14553:6;14549:14;14542:53;14425:177;:::o;14608:366::-;14750:3;14771:67;14835:2;14830:3;14771:67;:::i;:::-;14764:74;;14847:93;14936:3;14847:93;:::i;:::-;14965:2;14960:3;14956:12;14949:19;;14608:366;;;:::o;14980:419::-;15146:4;15184:2;15173:9;15169:18;15161:26;;15233:9;15227:4;15223:20;15219:1;15208:9;15204:17;15197:47;15261:131;15387:4;15261:131;:::i;:::-;15253:139;;14980:419;;;:::o;15405:178::-;15545:30;15541:1;15533:6;15529:14;15522:54;15405:178;:::o;15589:366::-;15731:3;15752:67;15816:2;15811:3;15752:67;:::i;:::-;15745:74;;15828:93;15917:3;15828:93;:::i;:::-;15946:2;15941:3;15937:12;15930:19;;15589:366;;;:::o;15961:419::-;16127:4;16165:2;16154:9;16150:18;16142:26;;16214:9;16208:4;16204:20;16200:1;16189:9;16185:17;16178:47;16242:131;16368:4;16242:131;:::i;:::-;16234:139;;15961:419;;;:::o;16386:332::-;16507:4;16545:2;16534:9;16530:18;16522:26;;16558:71;16626:1;16615:9;16611:17;16602:6;16558:71;:::i;:::-;16639:72;16707:2;16696:9;16692:18;16683:6;16639:72;:::i;:::-;16386:332;;;;;:::o;16724:102::-;16765:6;16816:2;16812:7;16807:2;16800:5;16796:14;16792:28;16782:38;;16724:102;;;:::o;16832:281::-;16915:27;16937:4;16915:27;:::i;:::-;16907:6;16903:40;17045:6;17033:10;17030:22;17009:18;16997:10;16994:34;16991:62;16988:88;;;17056:18;;:::i;:::-;16988:88;17096:10;17092:2;17085:22;16875:238;16832:281;;:::o;17119:129::-;17153:6;17180:20;;:::i;:::-;17170:30;;17209:33;17237:4;17229:6;17209:33;:::i;:::-;17119:129;;;:::o;17254:311::-;17331:4;17421:18;17413:6;17410:30;17407:56;;;17443:18;;:::i;:::-;17407:56;17493:4;17485:6;17481:17;17473:25;;17553:4;17547;17543:15;17535:23;;17254:311;;;:::o;17571:143::-;17628:5;17659:6;17653:13;17644:22;;17675:33;17702:5;17675:33;:::i;:::-;17571:143;;;;:::o;17737:732::-;17844:5;17869:81;17885:64;17942:6;17885:64;:::i;:::-;17869:81;:::i;:::-;17860:90;;17970:5;17999:6;17992:5;17985:21;18033:4;18026:5;18022:16;18015:23;;18086:4;18078:6;18074:17;18066:6;18062:30;18115:3;18107:6;18104:15;18101:122;;;18134:79;;:::i;:::-;18101:122;18249:6;18232:231;18266:6;18261:3;18258:15;18232:231;;;18341:3;18370:48;18414:3;18402:10;18370:48;:::i;:::-;18365:3;18358:61;18448:4;18443:3;18439:14;18432:21;;18308:155;18292:4;18287:3;18283:14;18276:21;;18232:231;;;18236:21;17850:619;;17737:732;;;;;:::o;18492:385::-;18574:5;18623:3;18616:4;18608:6;18604:17;18600:27;18590:122;;18631:79;;:::i;:::-;18590:122;18741:6;18735:13;18766:105;18867:3;18859:6;18852:4;18844:6;18840:17;18766:105;:::i;:::-;18757:114;;18580:297;18492:385;;;;:::o;18883:554::-;18978:6;19027:2;19015:9;19006:7;19002:23;18998:32;18995:119;;;19033:79;;:::i;:::-;18995:119;19174:1;19163:9;19159:17;19153:24;19204:18;19196:6;19193:30;19190:117;;;19226:79;;:::i;:::-;19190:117;19331:89;19412:7;19403:6;19392:9;19388:22;19331:89;:::i;:::-;19321:99;;19124:306;18883:554;;;;:::o;19443:634::-;19664:4;19702:2;19691:9;19687:18;19679:26;;19751:9;19745:4;19741:20;19737:1;19726:9;19722:17;19715:47;19779:108;19882:4;19873:6;19779:108;:::i;:::-;19771:116;;19934:9;19928:4;19924:20;19919:2;19908:9;19904:18;19897:48;19962:108;20065:4;20056:6;19962:108;:::i;:::-;19954:116;;19443:634;;;;;:::o;20083:148::-;20185:11;20222:3;20207:18;;20083:148;;;;:::o;20237:173::-;20377:25;20373:1;20365:6;20361:14;20354:49;20237:173;:::o;20416:402::-;20576:3;20597:85;20679:2;20674:3;20597:85;:::i;:::-;20590:92;;20691:93;20780:3;20691:93;:::i;:::-;20809:2;20804:3;20800:12;20793:19;;20416:402;;;:::o;20824:99::-;20876:6;20910:5;20904:12;20894:22;;20824:99;;;:::o;20929:307::-;20997:1;21007:113;21021:6;21018:1;21015:13;21007:113;;;21106:1;21101:3;21097:11;21091:18;21087:1;21082:3;21078:11;21071:39;21043:2;21040:1;21036:10;21031:15;;21007:113;;;21138:6;21135:1;21132:13;21129:101;;;21218:1;21209:6;21204:3;21200:16;21193:27;21129:101;20978:258;20929:307;;;:::o;21242:377::-;21348:3;21376:39;21409:5;21376:39;:::i;:::-;21431:89;21513:6;21508:3;21431:89;:::i;:::-;21424:96;;21529:52;21574:6;21569:3;21562:4;21555:5;21551:16;21529:52;:::i;:::-;21606:6;21601:3;21597:16;21590:23;;21352:267;21242:377;;;;:::o;21625:167::-;21765:19;21761:1;21753:6;21749:14;21742:43;21625:167;:::o;21798:402::-;21958:3;21979:85;22061:2;22056:3;21979:85;:::i;:::-;21972:92;;22073:93;22162:3;22073:93;:::i;:::-;22191:2;22186:3;22182:12;22175:19;;21798:402;;;:::o;22206:967::-;22588:3;22610:148;22754:3;22610:148;:::i;:::-;22603:155;;22775:95;22866:3;22857:6;22775:95;:::i;:::-;22768:102;;22887:148;23031:3;22887:148;:::i;:::-;22880:155;;23052:95;23143:3;23134:6;23052:95;:::i;:::-;23045:102;;23164:3;23157:10;;22206:967;;;;;:::o;23179:364::-;23267:3;23295:39;23328:5;23295:39;:::i;:::-;23350:71;23414:6;23409:3;23350:71;:::i;:::-;23343:78;;23430:52;23475:6;23470:3;23463:4;23456:5;23452:16;23430:52;:::i;:::-;23507:29;23529:6;23507:29;:::i;:::-;23502:3;23498:39;23491:46;;23271:272;23179:364;;;;:::o;23549:313::-;23662:4;23700:2;23689:9;23685:18;23677:26;;23749:9;23743:4;23739:20;23735:1;23724:9;23720:17;23713:47;23777:78;23850:4;23841:6;23777:78;:::i;:::-;23769:86;;23549:313;;;;:::o;23868:348::-;23908:7;23931:20;23949:1;23931:20;:::i;:::-;23926:25;;23965:20;23983:1;23965:20;:::i;:::-;23960:25;;24153:1;24085:66;24081:74;24078:1;24075:81;24070:1;24063:9;24056:17;24052:105;24049:131;;;24160:18;;:::i;:::-;24049:131;24208:1;24205;24201:9;24190:20;;23868:348;;;;:::o;24222:305::-;24262:3;24281:20;24299:1;24281:20;:::i;:::-;24276:25;;24315:20;24333:1;24315:20;:::i;:::-;24310:25;;24469:1;24401:66;24397:74;24394:1;24391:81;24388:107;;;24475:18;;:::i;:::-;24388:107;24519:1;24516;24512:9;24505:16;;24222:305;;;;:::o;24533:171::-;24572:3;24595:24;24613:5;24595:24;:::i;:::-;24586:33;;24641:4;24634:5;24631:15;24628:41;;;24649:18;;:::i;:::-;24628:41;24696:1;24689:5;24685:13;24678:20;;24533:171;;;:::o;24710:182::-;24850:34;24846:1;24838:6;24834:14;24827:58;24710:182;:::o;24898:366::-;25040:3;25061:67;25125:2;25120:3;25061:67;:::i;:::-;25054:74;;25137:93;25226:3;25137:93;:::i;:::-;25255:2;25250:3;25246:12;25239:19;;24898:366;;;:::o;25270:419::-;25436:4;25474:2;25463:9;25459:18;25451:26;;25523:9;25517:4;25513:20;25509:1;25498:9;25494:17;25487:47;25551:131;25677:4;25551:131;:::i;:::-;25543:139;;25270:419;;;:::o;25695:191::-;25735:4;25755:20;25773:1;25755:20;:::i;:::-;25750:25;;25789:20;25807:1;25789:20;:::i;:::-;25784:25;;25828:1;25825;25822:8;25819:34;;;25833:18;;:::i;:::-;25819:34;25878:1;25875;25871:9;25863:17;;25695:191;;;;:::o;25892:180::-;25940:77;25937:1;25930:88;26037:4;26034:1;26027:15;26061:4;26058:1;26051:15", - "source": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.10;\n\nimport \"@openzeppelin/contracts/access/AccessControlEnumerable.sol\";\nimport \"../interfaces/IBEERC721.sol\";\n\ncontract NftDistributor is AccessControlEnumerable {\n bytes32 public constant MANAGE_ROLE = keccak256(\"MANAGE_ROLE\");\n\n // user address => nft ids\n mapping(address => uint256[]) public ownerToNFTs;\n // nft id => minted\n mapping(uint256 => bool) public nftMinted;\n\n IBEERC721 public nft;\n\n // NFT distributor open status\n bool public isOpen = true;\n\n event Minted(\n address indexed user,\n address indexed nft,\n uint256[] nftSIds,\n uint256[] nftTIds\n );\n\n event OpenStatusChange(bool indexed open);\n\n /**\n * @dev Contract constructor.\n *\n * Initializes the contract with the specified addresses and sets the admin and management roles.\n *\n * Parameters:\n * - _nftTarget: The address of NFT that will be minted by this contract. Need MINTER_ROLE\n * - _nftSource: The address of the source NFT that will check if user has mint permission.\n * - _manageAddress: The address that will have the MANAGE_ROLE assigned.\n */\n constructor(address _nftTarget, address[] memory _manageAddress) {\n // Set up the ADMIN_ROLE and MANAGE_ROLE\n _setRoleAdmin(MANAGE_ROLE, DEFAULT_ADMIN_ROLE);\n\n // Grant the ADMIN_ROLE to the deployer and to the contract itself\n _setupRole(DEFAULT_ADMIN_ROLE, _msgSender());\n\n // Grant the MANAGE_ROLE to the specified address\n for (uint256 i = 0; i < _manageAddress.length; ++i) {\n _setupRole(MANAGE_ROLE, _manageAddress[i]);\n }\n\n // Initialize the nft contract with IBEERC721 interface\n nft = IBEERC721(_nftTarget);\n }\n\n /**\n * @dev Modifier that checks if the caller has the MANAGE_ROLE.\n *\n * The function uses the _checkRole() function from the AccessControl library.\n * If the check is successful, the code defined by the function that uses this modifier is executed.\n */\n modifier onlyManager() {\n // Check if the caller has the MANAGE_ROLE\n _checkRole(MANAGE_ROLE, _msgSender());\n // If the check is successful, execute the code in the function that uses this modifier\n _;\n }\n\n function updateOpenStatus(bool _open) external onlyManager {\n require(isOpen != _open, \"Open status is same\");\n isOpen = _open;\n emit OpenStatusChange(_open);\n }\n\n /**\n * @dev The mintToUser function mints NFTs to a given user.\n *\n * Only functions called by an address with the MANAGE_ROLE permission can access this function.\n * The function takes an array of nftIds and checks that there are enough mintable NFTs for the user.\n * It then loops through the user's owned NFTs, checking if each is mintable, and if so, adds it to a list to be minted.\n * Then it emits the Minted event with details of the operation.\n *\n * @param _user - The address of the user receiving the NFTs\n */\n function mintToUser(address _user, uint256 count) external onlyManager {\n require(isOpen, \"NFT distributor is not open\");\n // Check that there are enough mintable NFTs\n require(count <= getMintableCount(_user), \"Mintable count is not enough\");\n // Get the array of the user's owned NFTs\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize variables\n uint256 index = 0;\n uint256[] memory nftSource = new uint256[](count);\n\n // Loop through the user's owned NFTs\n for (uint256 i = 0; i < nfts.length; i++) {\n uint256 nftSId = nfts[i];\n // Check if the NFT is mintable\n if (!nftMinted[nftSId] && index < count) {\n // Add the NFT's source ID to the list of sources\n nftSource[index] = nftSId;\n nftMinted[nftSId] = true;\n // Mint the NFT to the user's address\n index++;\n }\n }\n uint256[] memory _nftIds = nft.batchMint(_user, count);\n // Emit event with details of the minting operation\n emit Minted(_user, address(nft), nftSource, _nftIds);\n }\n\n /**\n * @dev The addNFTData function adds an array of NFT IDs to the list of NFT IDs owned by a user.\n * mintToUser method would check if target user had permission to mint NFTs.\n *\n * Only functions called by an address with the MANAGE_ROLE permission can access this function.\n * The function takes in the address of the user and an array of NFT IDs. It then loops through the array\n * of NFT IDs, and adds each one to the end of the array of NFTs owned by that user to update their ownership data.\n *\n * @param _user - The address of the user being updated with new NFT data\n * @param _nftIds - An array of NFT IDs being added to the user's NFT data\n */\n function addNFTData(\n address _user,\n uint256[] calldata _nftIds\n ) external onlyManager {\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < _nftIds.length; i++) {\n // Add each NFT ID to the end of the array of NFTs owned by the user\n ownerToNFTs[_user].push(_nftIds[i]);\n }\n }\n\n /**\n * @dev The getMintableCount function gets the number of NFTs owned by a user that have not yet been minted.\n *\n * This is a read-only function, meaning it doesn't modify the state of the blockchain.\n * It takes in the address of the user whose mintable count is being determined,\n * and returns the number of NFTs owned by the user that have not yet been minted.\n *\n * @param _user - The address of the user whose mintable count is being determined\n * @return count - The number of NFTs owned by the user that have not yet been minted\n */\n function getMintableCount(address _user) public view returns (uint256) {\n // Get an array of all NFT IDs owned by the user\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize count to zero\n uint256 count = 0;\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < nfts.length; i++) {\n // Get the NFT ID at this index of the loop\n uint256 nftAId = nfts[i];\n // Check if the NFT has not yet been minted\n if (!nftMinted[nftAId]) {\n // If the NFT has not yet been minted, increment the mintable count\n count++;\n }\n }\n // Return the final mintable count\n return count;\n }\n\n /**\n * @dev The getMintableNftIds function gets an array of NFT IDs owned by a user that have not yet been minted.\n *\n * This is a read-only function, meaning it doesn't modify the state of the blockchain.\n * It takes in the address of the user whose mintable NFT IDs are being determined,\n * and returns an array of the NFT IDs owned by the user that have not yet been minted.\n *\n * @param _user - The address of the user whose mintable NFT IDs are being determined\n * @return mintableNftIds - An array of the NFT IDs owned by the user that have not yet been minted\n */\n function getMintableNftIds(\n address _user\n ) external view returns (uint256[] memory) {\n // Get an array of all NFT IDs owned by the user\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize an array for mintable NFT IDs with the same length as the array of all NFT IDs\n uint256[] memory mintableNftIds = new uint256[](nfts.length);\n // Initialize an index counter to zero\n uint256 index = 0;\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < nfts.length; i++) {\n // Get the NFT ID at this index of the loop\n uint256 nftId = nfts[i];\n // Check if the NFT has not yet been minted\n if (!nftMinted[nftId]) {\n // If the NFT has not yet been minted, add it to the mintable NFT IDs array\n mintableNftIds[index] = nftId;\n // Increment the index counter\n index++;\n }\n }\n // Return the array of mintable NFT IDs\n return mintableNftIds;\n }\n}\n", + "sourceMap": "165:6984:13:-:0;;;515:5;494:26;;;;;;;;;;;;;;;;;;;;1123:552;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1239:46;258:24;2198:4:0;1266:18:13;;1239:13;;;:46;;:::i;:::-;1363:44;2198:4:0;1374:18:13;;1394:12;:10;;;:12;;:::i;:::-;1363:10;;;:44;;:::i;:::-;1473:9;1468:109;1492:14;:21;1488:1;:25;1468:109;;;1528:42;258:24;1552:14;1567:1;1552:17;;;;;;;;:::i;:::-;;;;;;;;1528:10;;;:42;;:::i;:::-;1515:3;;;;:::i;:::-;;;1468:109;;;;1659:10;1643:3;;:27;;;;;;;;;;;;;;;;;;1123:552;;165:6984;;7172:247:0;7255:25;7283:18;7296:4;7283:12;;;:18;;:::i;:::-;7255:46;;7336:9;7311:6;:12;7318:4;7311:12;;;;;;;;;;;:22;;:34;;;;7402:9;7383:17;7377:4;7360:52;;;;;;;;;;7245:174;7172:247;;:::o;640:96:5:-;693:7;719:10;712:17;;640:96;:::o;6937:110:0:-;7015:25;7026:4;7032:7;7015:10;;;:25;;:::i;:::-;6937:110;;:::o;4504:129::-;4578:7;4604:6;:12;4611:4;4604:12;;;;;;;;;;;:22;;;4597:29;;4504:129;;;:::o;1978:166:1:-;2065:31;2082:4;2088:7;2065:16;;;;;:31;;:::i;:::-;2106;2129:7;2106:12;:18;2119:4;2106:18;;;;;;;;;;;:22;;;;;;:31;;;;:::i;:::-;;1978:166;;:::o;7587:233:0:-;7670:22;7678:4;7684:7;7670;;;:22;;:::i;:::-;7665:149;;7740:4;7708:6;:12;7715:4;7708:12;;;;;;;;;;;:20;;:29;7729:7;7708:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;7790:12;:10;;;:12;;:::i;:::-;7763:40;;7781:7;7763:40;;7775:4;7763:40;;;;;;;;;;7665:149;7587:233;;:::o;8305:150:11:-;8375:4;8398:50;8403:3;:10;;8439:5;8423:23;;8415:32;;8398:4;;;:50;;:::i;:::-;8391:57;;8305:150;;;;:::o;3021:145:0:-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;2214:404:11:-;2277:4;2298:21;2308:3;2313:5;2298:9;;;:21;;:::i;:::-;2293:319;;2335:3;:11;;2352:5;2335:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2515:3;:11;;:18;;;;2493:3;:12;;:19;2506:5;2493:19;;;;;;;;;;;:40;;;;2554:4;2547:11;;;;2293:319;2596:5;2589:12;;2214:404;;;;;:::o;4255:127::-;4328:4;4374:1;4351:3;:12;;:19;4364:5;4351:19;;;;;;;;;;;;:24;;4344:31;;4255:127;;;;:::o;7:75:14:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:143::-;753:5;784:6;778:13;769:22;;800:33;827:5;800:33;:::i;:::-;696:143;;;;:::o;845:117::-;954:1;951;944:12;968:102;1009:6;1060:2;1056:7;1051:2;1044:5;1040:14;1036:28;1026:38;;968:102;;;:::o;1076:180::-;1124:77;1121:1;1114:88;1221:4;1218:1;1211:15;1245:4;1242:1;1235:15;1262:281;1345:27;1367:4;1345:27;:::i;:::-;1337:6;1333:40;1475:6;1463:10;1460:22;1439:18;1427:10;1424:34;1421:62;1418:88;;;1486:18;;:::i;:::-;1418:88;1526:10;1522:2;1515:22;1305:238;1262:281;;:::o;1549:129::-;1583:6;1610:20;;:::i;:::-;1600:30;;1639:33;1667:4;1659:6;1639:33;:::i;:::-;1549:129;;;:::o;1684:311::-;1761:4;1851:18;1843:6;1840:30;1837:56;;;1873:18;;:::i;:::-;1837:56;1923:4;1915:6;1911:17;1903:25;;1983:4;1977;1973:15;1965:23;;1684:311;;;:::o;2001:117::-;2110:1;2107;2100:12;2141:732;2248:5;2273:81;2289:64;2346:6;2289:64;:::i;:::-;2273:81;:::i;:::-;2264:90;;2374:5;2403:6;2396:5;2389:21;2437:4;2430:5;2426:16;2419:23;;2490:4;2482:6;2478:17;2470:6;2466:30;2519:3;2511:6;2508:15;2505:122;;;2538:79;;:::i;:::-;2505:122;2653:6;2636:231;2670:6;2665:3;2662:15;2636:231;;;2745:3;2774:48;2818:3;2806:10;2774:48;:::i;:::-;2769:3;2762:61;2852:4;2847:3;2843:14;2836:21;;2712:155;2696:4;2691:3;2687:14;2680:21;;2636:231;;;2640:21;2254:619;;2141:732;;;;;:::o;2896:385::-;2978:5;3027:3;3020:4;3012:6;3008:17;3004:27;2994:122;;3035:79;;:::i;:::-;2994:122;3145:6;3139:13;3170:105;3271:3;3263:6;3256:4;3248:6;3244:17;3170:105;:::i;:::-;3161:114;;2984:297;2896:385;;;;:::o;3287:710::-;3391:6;3399;3448:2;3436:9;3427:7;3423:23;3419:32;3416:119;;;3454:79;;:::i;:::-;3416:119;3574:1;3599:64;3655:7;3646:6;3635:9;3631:22;3599:64;:::i;:::-;3589:74;;3545:128;3733:2;3722:9;3718:18;3712:25;3764:18;3756:6;3753:30;3750:117;;;3786:79;;:::i;:::-;3750:117;3891:89;3972:7;3963:6;3952:9;3948:22;3891:89;:::i;:::-;3881:99;;3683:307;3287:710;;;;;:::o;4003:180::-;4051:77;4048:1;4041:88;4148:4;4145:1;4138:15;4172:4;4169:1;4162:15;4189:180;4237:77;4234:1;4227:88;4334:4;4331:1;4324:15;4358:4;4355:1;4348:15;4375:77;4412:7;4441:5;4430:16;;4375:77;;;:::o;4458:233::-;4497:3;4520:24;4538:5;4520:24;:::i;:::-;4511:33;;4566:66;4559:5;4556:77;4553:103;;;4636:18;;:::i;:::-;4553:103;4683:1;4676:5;4672:13;4665:20;;4458:233;;;:::o;165:6984:13:-;;;;;;;", + "deployedSourceMap": "165:6984:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;634:212:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6206:941:13;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4962:649;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2342:1048;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4504:129:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2167:171:13;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4929:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6038:214;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;494:26:13;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;436:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;220:62;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4077:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1431:151:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3021:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2153:49;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;316:48:13;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1750:140:1;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5354:147:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;390:41:13;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;634:212:1;719:4;757:42;742:57;;;:11;:57;;;;:97;;;;803:36;827:11;803:23;:36::i;:::-;742:97;735:104;;634:212;;;:::o;6206:941:13:-;6279:16;6356:21;6380:11;:18;6392:5;6380:18;;;;;;;;;;;;;;;6356:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6501:31;6549:4;:11;6535:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6501:60;;6610:13;6679:9;6674:398;6698:4;:11;6694:1;:15;6674:398;;;6774:13;6790:4;6795:1;6790:7;;;;;;;;:::i;:::-;;;;;;;;6774:23;;6860:9;:16;6870:5;6860:16;;;;;;;;;;;;;;;;;;;;;6855:211;;6996:5;6972:14;6987:5;6972:21;;;;;;;;:::i;:::-;;;;;;;:29;;;;;7050:7;;;;;:::i;:::-;;;;6855:211;6716:356;6711:3;;;;;:::i;:::-;;;;6674:398;;;;7128:14;7121:21;;;;;6206:941;;;:::o;4962:649::-;5024:7;5092:21;5116:11;:18;5128:5;5116:18;;;;;;;;;;;;;;;5092:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5172:13;5241:9;5236:314;5260:4;:11;5256:1;:15;5236:314;;;5336:14;5353:4;5358:1;5353:7;;;;;;;;:::i;:::-;;;;;;;;5336:24;;5423:9;:17;5433:6;5423:17;;;;;;;;;;;;;;;;;;;;;5418:126;;5528:7;;;;;:::i;:::-;;;;5418:126;5278:272;5273:3;;;;;:::i;:::-;;;;5236:314;;;;5601:5;5594:12;;;;4962:649;;;:::o;2342:1048::-;2397:6;;;;;;;;;;;2389:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2441:13;2457:12;:10;:12::i;:::-;2441:28;;2541:23;2558:5;2541:16;:23::i;:::-;2532:5;:32;;2524:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2649:21;2673:11;:18;2685:5;2673:18;;;;;;;;;;;;;;;2649:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2725:13;2748:26;2791:5;2777:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2748:49;;2851:9;2846:366;2870:4;:11;2866:1;:15;2846:366;;;2896:14;2913:4;2918:1;2913:7;;;;;;;;:::i;:::-;;;;;;;;2896:24;;2971:9;:17;2981:6;2971:17;;;;;;;;;;;;;;;;;;;;;2970:18;:35;;;;;3000:5;2992;:13;2970:35;2966:240;;;3094:6;3075:9;3085:5;3075:16;;;;;;;;:::i;:::-;;;;;;;:25;;;;;3130:4;3110:9;:17;3120:6;3110:17;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;3190:7;;;;;:::i;:::-;;;;2966:240;2888:324;2883:3;;;;;:::i;:::-;;;;2846:366;;;;3217:24;3244:3;;;;;;;;;;;:13;;;3258:5;3265;3244:27;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3217:54;;3360:3;;;;;;;;;;;3338:47;;3345:5;3338:47;;;3366:9;3377:7;3338:47;;;;;;;:::i;:::-;;;;;;;;2383:1007;;;;;2342:1048;:::o;4504:129:0:-;4578:7;4604:6;:12;4611:4;4604:12;;;;;;;;;;;:22;;;4597:29;;4504:129;;;:::o;2167:171:13:-;2022:37;258:24;2046:12;:10;:12::i;:::-;2022:10;:37::i;:::-;2250:5:::1;2240:15;;:6;;;;;;;;;;;:15;;;;2232:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;2294:5;2285:6;;:14;;;;;;;;;;;;;;;;;;2327:5;2310:23;;;;;;;;;;;;2167:171:::0;:::o;4929:145:0:-;5012:18;5025:4;5012:12;:18::i;:::-;2631:16;2642:4;2631:10;:16::i;:::-;5042:25:::1;5053:4;5059:7;5042:10;:25::i;:::-;4929:145:::0;;;:::o;6038:214::-;6144:12;:10;:12::i;:::-;6133:23;;:7;:23;;;6125:83;;;;;;;;;;;;:::i;:::-;;;;;;;;;6219:26;6231:4;6237:7;6219:11;:26::i;:::-;6038:214;;:::o;494:26:13:-;;;;;;;;;;;;;:::o;436:20::-;;;;;;;;;;;;;:::o;220:62::-;258:24;220:62;:::o;4077:317::-;2022:37;258:24;2046:12;:10;:12::i;:::-;2022:10;:37::i;:::-;4225:9:::1;4220:170;4244:7;;:14;;4240:1;:18;4220:170;;;4348:11;:18;4360:5;4348:18;;;;;;;;;;;;;;;4372:7;;4380:1;4372:10;;;;;;;:::i;:::-;;;;;;;;4348:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4260:3;;;;;:::i;:::-;;;;4220:170;;;;4077:317:::0;;;:::o;1431:151:1:-;1521:7;1547:28;1569:5;1547:12;:18;1560:4;1547:18;;;;;;;;;;;:21;;:28;;;;:::i;:::-;1540:35;;1431:151;;;;:::o;3021:145:0:-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;2153:49::-;2198:4;2153:49;;;:::o;316:48:13:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1750:140:1:-;1830:7;1856:27;:12;:18;1869:4;1856:18;;;;;;;;;;;:25;:27::i;:::-;1849:34;;1750:140;;;:::o;5354:147:0:-;5438:18;5451:4;5438:12;:18::i;:::-;2631:16;2642:4;2631:10;:16::i;:::-;5468:26:::1;5480:4;5486:7;5468:11;:26::i;:::-;5354:147:::0;;;:::o;390:41:13:-;;;;;;;;;;;;;;;;;;;;;;:::o;7587:233:0:-;7670:22;7678:4;7684:7;7670;:22::i;:::-;7665:149;;7740:4;7708:6;:12;7715:4;7708:12;;;;;;;;;;;:20;;:29;7729:7;7708:29;;;;;;;;;;;;;;;;:36;;;;;;;;;;;;;;;;;;7790:12;:10;:12::i;:::-;7763:40;;7781:7;7763:40;;7775:4;7763:40;;;;;;;;;;7665:149;7587:233;;:::o;8305:150:11:-;8375:4;8398:50;8403:3;:10;;8439:5;8423:23;;8415:32;;8398:4;:50::i;:::-;8391:57;;8305:150;;;;:::o;2732:202:0:-;2817:4;2855:32;2840:47;;;:11;:47;;;;:87;;;;2891:36;2915:11;2891:23;:36::i;:::-;2840:87;2833:94;;2732:202;;;:::o;640:96:5:-;693:7;719:10;712:17;;640:96;:::o;3844:479:0:-;3932:22;3940:4;3946:7;3932;:22::i;:::-;3927:390;;4115:28;4135:7;4115:19;:28::i;:::-;4214:38;4242:4;4234:13;;4249:2;4214:19;:38::i;:::-;4022:252;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3970:336;;;;;;;;;;;:::i;:::-;;;;;;;;3927:390;3844:479;;:::o;3460:103::-;3526:30;3537:4;3543:12;:10;:12::i;:::-;3526:10;:30::i;:::-;3460:103;:::o;1978:166:1:-;2065:31;2082:4;2088:7;2065:16;:31::i;:::-;2106;2129:7;2106:12;:18;2119:4;2106:18;;;;;;;;;;;:22;;:31;;;;:::i;:::-;;1978:166;;:::o;2233:171::-;2321:32;2339:4;2345:7;2321:17;:32::i;:::-;2363:34;2389:7;2363:12;:18;2376:4;2363:18;;;;;;;;;;;:25;;:34;;;;:::i;:::-;;2233:171;;:::o;9563:156:11:-;9637:7;9687:22;9691:3;:10;;9703:5;9687:3;:22::i;:::-;9679:31;;9656:56;;9563:156;;;;:::o;9106:115::-;9169:7;9195:19;9203:3;:10;;9195:7;:19::i;:::-;9188:26;;9106:115;;;:::o;2214:404::-;2277:4;2298:21;2308:3;2313:5;2298:9;:21::i;:::-;2293:319;;2335:3;:11;;2352:5;2335:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2515:3;:11;;:18;;;;2493:3;:12;;:19;2506:5;2493:19;;;;;;;;;;;:40;;;;2554:4;2547:11;;;;2293:319;2596:5;2589:12;;2214:404;;;;;:::o;829:155:7:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;2407:149:6:-;2465:13;2497:52;2525:4;2509:22;;343:2;2497:52;;:11;:52::i;:::-;2490:59;;2407:149;;;:::o;1818:437::-;1893:13;1918:19;1963:1;1954:6;1950:1;:10;;;;:::i;:::-;:14;;;;:::i;:::-;1940:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1918:47;;1975:15;:6;1982:1;1975:9;;;;;;;;:::i;:::-;;;;;:15;;;;;;;;;;;2000;:6;2007:1;2000:9;;;;;;;;:::i;:::-;;;;;:15;;;;;;;;;;;2030:9;2055:1;2046:6;2042:1;:10;;;;:::i;:::-;:14;;;;:::i;:::-;2030:26;;2025:128;2062:1;2058;:5;2025:128;;;2096:8;2113:3;2105:5;:11;2096:21;;;;;;;:::i;:::-;;;;;2084:6;2091:1;2084:9;;;;;;;;:::i;:::-;;;;;:33;;;;;;;;;;;2141:1;2131:11;;;;;2065:3;;;;:::i;:::-;;;2025:128;;;;2179:1;2170:5;:10;2162:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;2241:6;2227:21;;;1818:437;;;;:::o;7991:234:0:-;8074:22;8082:4;8088:7;8074;:22::i;:::-;8070:149;;;8144:5;8112:6;:12;8119:4;8112:12;;;;;;;;;;;:20;;:29;8133:7;8112:29;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;8195:12;:10;:12::i;:::-;8168:40;;8186:7;8168:40;;8180:4;8168:40;;;;;;;;;;8070:149;7991:234;;:::o;8623:156:11:-;8696:4;8719:53;8727:3;:10;;8763:5;8747:23;;8739:32;;8719:7;:53::i;:::-;8712:60;;8623:156;;;;:::o;4912:118::-;4979:7;5005:3;:11;;5017:5;5005:18;;;;;;;;:::i;:::-;;;;;;;;;;4998:25;;4912:118;;;;:::o;4463:107::-;4519:7;4545:3;:11;;:18;;;;4538:25;;4463:107;;;:::o;4255:127::-;4328:4;4374:1;4351:3;:12;;:19;4364:5;4351:19;;;;;;;;;;;;:24;;4344:31;;4255:127;;;;:::o;2786:1388::-;2852:4;2968:18;2989:3;:12;;:19;3002:5;2989:19;;;;;;;;;;;;2968:40;;3037:1;3023:10;:15;3019:1149;;3392:21;3429:1;3416:10;:14;;;;:::i;:::-;3392:38;;3444:17;3485:1;3464:3;:11;;:18;;;;:22;;;;:::i;:::-;3444:42;;3518:13;3505:9;:26;3501:398;;3551:17;3571:3;:11;;3583:9;3571:22;;;;;;;;:::i;:::-;;;;;;;;;;3551:42;;3722:9;3693:3;:11;;3705:13;3693:26;;;;;;;;:::i;:::-;;;;;;;;;:38;;;;3831:10;3805:3;:12;;:23;3818:9;3805:23;;;;;;;;;;;:36;;;;3533:366;3501:398;3977:3;:11;;:17;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4069:3;:12;;:19;4082:5;4069:19;;;;;;;;;;;4062:26;;;4110:4;4103:11;;;;;;;3019:1149;4152:5;4145:12;;;2786:1388;;;;;:::o;7:75:14:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:126::-;1555:7;1595:42;1588:5;1584:54;1573:65;;1518:126;;;:::o;1650:96::-;1687:7;1716:24;1734:5;1716:24;:::i;:::-;1705:35;;1650:96;;;:::o;1752:122::-;1825:24;1843:5;1825:24;:::i;:::-;1818:5;1815:35;1805:63;;1864:1;1861;1854:12;1805:63;1752:122;:::o;1880:139::-;1926:5;1964:6;1951:20;1942:29;;1980:33;2007:5;1980:33;:::i;:::-;1880:139;;;;:::o;2025:329::-;2084:6;2133:2;2121:9;2112:7;2108:23;2104:32;2101:119;;;2139:79;;:::i;:::-;2101:119;2259:1;2284:53;2329:7;2320:6;2309:9;2305:22;2284:53;:::i;:::-;2274:63;;2230:117;2025:329;;;;:::o;2360:114::-;2427:6;2461:5;2455:12;2445:22;;2360:114;;;:::o;2480:184::-;2579:11;2613:6;2608:3;2601:19;2653:4;2648:3;2644:14;2629:29;;2480:184;;;;:::o;2670:132::-;2737:4;2760:3;2752:11;;2790:4;2785:3;2781:14;2773:22;;2670:132;;;:::o;2808:77::-;2845:7;2874:5;2863:16;;2808:77;;;:::o;2891:108::-;2968:24;2986:5;2968:24;:::i;:::-;2963:3;2956:37;2891:108;;:::o;3005:179::-;3074:10;3095:46;3137:3;3129:6;3095:46;:::i;:::-;3173:4;3168:3;3164:14;3150:28;;3005:179;;;;:::o;3190:113::-;3260:4;3292;3287:3;3283:14;3275:22;;3190:113;;;:::o;3339:732::-;3458:3;3487:54;3535:5;3487:54;:::i;:::-;3557:86;3636:6;3631:3;3557:86;:::i;:::-;3550:93;;3667:56;3717:5;3667:56;:::i;:::-;3746:7;3777:1;3762:284;3787:6;3784:1;3781:13;3762:284;;;3863:6;3857:13;3890:63;3949:3;3934:13;3890:63;:::i;:::-;3883:70;;3976:60;4029:6;3976:60;:::i;:::-;3966:70;;3822:224;3809:1;3806;3802:9;3797:14;;3762:284;;;3766:14;4062:3;4055:10;;3463:608;;;3339:732;;;;:::o;4077:373::-;4220:4;4258:2;4247:9;4243:18;4235:26;;4307:9;4301:4;4297:20;4293:1;4282:9;4278:17;4271:47;4335:108;4438:4;4429:6;4335:108;:::i;:::-;4327:116;;4077:373;;;;:::o;4456:118::-;4543:24;4561:5;4543:24;:::i;:::-;4538:3;4531:37;4456:118;;:::o;4580:222::-;4673:4;4711:2;4700:9;4696:18;4688:26;;4724:71;4792:1;4781:9;4777:17;4768:6;4724:71;:::i;:::-;4580:222;;;;:::o;4808:122::-;4881:24;4899:5;4881:24;:::i;:::-;4874:5;4871:35;4861:63;;4920:1;4917;4910:12;4861:63;4808:122;:::o;4936:139::-;4982:5;5020:6;5007:20;4998:29;;5036:33;5063:5;5036:33;:::i;:::-;4936:139;;;;:::o;5081:329::-;5140:6;5189:2;5177:9;5168:7;5164:23;5160:32;5157:119;;;5195:79;;:::i;:::-;5157:119;5315:1;5340:53;5385:7;5376:6;5365:9;5361:22;5340:53;:::i;:::-;5330:63;;5286:117;5081:329;;;;:::o;5416:77::-;5453:7;5482:5;5471:16;;5416:77;;;:::o;5499:122::-;5572:24;5590:5;5572:24;:::i;:::-;5565:5;5562:35;5552:63;;5611:1;5608;5601:12;5552:63;5499:122;:::o;5627:139::-;5673:5;5711:6;5698:20;5689:29;;5727:33;5754:5;5727:33;:::i;:::-;5627:139;;;;:::o;5772:329::-;5831:6;5880:2;5868:9;5859:7;5855:23;5851:32;5848:119;;;5886:79;;:::i;:::-;5848:119;6006:1;6031:53;6076:7;6067:6;6056:9;6052:22;6031:53;:::i;:::-;6021:63;;5977:117;5772:329;;;;:::o;6107:118::-;6194:24;6212:5;6194:24;:::i;:::-;6189:3;6182:37;6107:118;;:::o;6231:222::-;6324:4;6362:2;6351:9;6347:18;6339:26;;6375:71;6443:1;6432:9;6428:17;6419:6;6375:71;:::i;:::-;6231:222;;;;:::o;6459:116::-;6529:21;6544:5;6529:21;:::i;:::-;6522:5;6519:32;6509:60;;6565:1;6562;6555:12;6509:60;6459:116;:::o;6581:133::-;6624:5;6662:6;6649:20;6640:29;;6678:30;6702:5;6678:30;:::i;:::-;6581:133;;;;:::o;6720:323::-;6776:6;6825:2;6813:9;6804:7;6800:23;6796:32;6793:119;;;6831:79;;:::i;:::-;6793:119;6951:1;6976:50;7018:7;7009:6;6998:9;6994:22;6976:50;:::i;:::-;6966:60;;6922:114;6720:323;;;;:::o;7049:474::-;7117:6;7125;7174:2;7162:9;7153:7;7149:23;7145:32;7142:119;;;7180:79;;:::i;:::-;7142:119;7300:1;7325:53;7370:7;7361:6;7350:9;7346:22;7325:53;:::i;:::-;7315:63;;7271:117;7427:2;7453:53;7498:7;7489:6;7478:9;7474:22;7453:53;:::i;:::-;7443:63;;7398:118;7049:474;;;;;:::o;7529:60::-;7557:3;7578:5;7571:12;;7529:60;;;:::o;7595:142::-;7645:9;7678:53;7696:34;7705:24;7723:5;7705:24;:::i;:::-;7696:34;:::i;:::-;7678:53;:::i;:::-;7665:66;;7595:142;;;:::o;7743:126::-;7793:9;7826:37;7857:5;7826:37;:::i;:::-;7813:50;;7743:126;;;:::o;7875:144::-;7943:9;7976:37;8007:5;7976:37;:::i;:::-;7963:50;;7875:144;;;:::o;8025:167::-;8130:55;8179:5;8130:55;:::i;:::-;8125:3;8118:68;8025:167;;:::o;8198:258::-;8309:4;8347:2;8336:9;8332:18;8324:26;;8360:89;8446:1;8435:9;8431:17;8422:6;8360:89;:::i;:::-;8198:258;;;;:::o;8462:117::-;8571:1;8568;8561:12;8585:117;8694:1;8691;8684:12;8708:117;8817:1;8814;8807:12;8848:568;8921:8;8931:6;8981:3;8974:4;8966:6;8962:17;8958:27;8948:122;;8989:79;;:::i;:::-;8948:122;9102:6;9089:20;9079:30;;9132:18;9124:6;9121:30;9118:117;;;9154:79;;:::i;:::-;9118:117;9268:4;9260:6;9256:17;9244:29;;9322:3;9314:4;9306:6;9302:17;9292:8;9288:32;9285:41;9282:128;;;9329:79;;:::i;:::-;9282:128;8848:568;;;;;:::o;9422:704::-;9517:6;9525;9533;9582:2;9570:9;9561:7;9557:23;9553:32;9550:119;;;9588:79;;:::i;:::-;9550:119;9708:1;9733:53;9778:7;9769:6;9758:9;9754:22;9733:53;:::i;:::-;9723:63;;9679:117;9863:2;9852:9;9848:18;9835:32;9894:18;9886:6;9883:30;9880:117;;;9916:79;;:::i;:::-;9880:117;10029:80;10101:7;10092:6;10081:9;10077:22;10029:80;:::i;:::-;10011:98;;;;9806:313;9422:704;;;;;:::o;10132:474::-;10200:6;10208;10257:2;10245:9;10236:7;10232:23;10228:32;10225:119;;;10263:79;;:::i;:::-;10225:119;10383:1;10408:53;10453:7;10444:6;10433:9;10429:22;10408:53;:::i;:::-;10398:63;;10354:117;10510:2;10536:53;10581:7;10572:6;10561:9;10557:22;10536:53;:::i;:::-;10526:63;;10481:118;10132:474;;;;;:::o;10612:118::-;10699:24;10717:5;10699:24;:::i;:::-;10694:3;10687:37;10612:118;;:::o;10736:222::-;10829:4;10867:2;10856:9;10852:18;10844:26;;10880:71;10948:1;10937:9;10933:17;10924:6;10880:71;:::i;:::-;10736:222;;;;:::o;10964:474::-;11032:6;11040;11089:2;11077:9;11068:7;11064:23;11060:32;11057:119;;;11095:79;;:::i;:::-;11057:119;11215:1;11240:53;11285:7;11276:6;11265:9;11261:22;11240:53;:::i;:::-;11230:63;;11186:117;11342:2;11368:53;11413:7;11404:6;11393:9;11389:22;11368:53;:::i;:::-;11358:63;;11313:118;10964:474;;;;;:::o;11444:180::-;11492:77;11489:1;11482:88;11589:4;11586:1;11579:15;11613:4;11610:1;11603:15;11630:180;11678:77;11675:1;11668:88;11775:4;11772:1;11765:15;11799:4;11796:1;11789:15;11816:180;11864:77;11861:1;11854:88;11961:4;11958:1;11951:15;11985:4;11982:1;11975:15;12002:233;12041:3;12064:24;12082:5;12064:24;:::i;:::-;12055:33;;12110:66;12103:5;12100:77;12097:103;;;12180:18;;:::i;:::-;12097:103;12227:1;12220:5;12216:13;12209:20;;12002:233;;;:::o;12241:169::-;12325:11;12359:6;12354:3;12347:19;12399:4;12394:3;12390:14;12375:29;;12241:169;;;;:::o;12416:177::-;12556:29;12552:1;12544:6;12540:14;12533:53;12416:177;:::o;12599:366::-;12741:3;12762:67;12826:2;12821:3;12762:67;:::i;:::-;12755:74;;12838:93;12927:3;12838:93;:::i;:::-;12956:2;12951:3;12947:12;12940:19;;12599:366;;;:::o;12971:419::-;13137:4;13175:2;13164:9;13160:18;13152:26;;13224:9;13218:4;13214:20;13210:1;13199:9;13195:17;13188:47;13252:131;13378:4;13252:131;:::i;:::-;13244:139;;12971:419;;;:::o;13396:178::-;13536:30;13532:1;13524:6;13520:14;13513:54;13396:178;:::o;13580:366::-;13722:3;13743:67;13807:2;13802:3;13743:67;:::i;:::-;13736:74;;13819:93;13908:3;13819:93;:::i;:::-;13937:2;13932:3;13928:12;13921:19;;13580:366;;;:::o;13952:419::-;14118:4;14156:2;14145:9;14141:18;14133:26;;14205:9;14199:4;14195:20;14191:1;14180:9;14176:17;14169:47;14233:131;14359:4;14233:131;:::i;:::-;14225:139;;13952:419;;;:::o;14377:332::-;14498:4;14536:2;14525:9;14521:18;14513:26;;14549:71;14617:1;14606:9;14602:17;14593:6;14549:71;:::i;:::-;14630:72;14698:2;14687:9;14683:18;14674:6;14630:72;:::i;:::-;14377:332;;;;;:::o;14715:102::-;14756:6;14807:2;14803:7;14798:2;14791:5;14787:14;14783:28;14773:38;;14715:102;;;:::o;14823:281::-;14906:27;14928:4;14906:27;:::i;:::-;14898:6;14894:40;15036:6;15024:10;15021:22;15000:18;14988:10;14985:34;14982:62;14979:88;;;15047:18;;:::i;:::-;14979:88;15087:10;15083:2;15076:22;14866:238;14823:281;;:::o;15110:129::-;15144:6;15171:20;;:::i;:::-;15161:30;;15200:33;15228:4;15220:6;15200:33;:::i;:::-;15110:129;;;:::o;15245:311::-;15322:4;15412:18;15404:6;15401:30;15398:56;;;15434:18;;:::i;:::-;15398:56;15484:4;15476:6;15472:17;15464:25;;15544:4;15538;15534:15;15526:23;;15245:311;;;:::o;15562:143::-;15619:5;15650:6;15644:13;15635:22;;15666:33;15693:5;15666:33;:::i;:::-;15562:143;;;;:::o;15728:732::-;15835:5;15860:81;15876:64;15933:6;15876:64;:::i;:::-;15860:81;:::i;:::-;15851:90;;15961:5;15990:6;15983:5;15976:21;16024:4;16017:5;16013:16;16006:23;;16077:4;16069:6;16065:17;16057:6;16053:30;16106:3;16098:6;16095:15;16092:122;;;16125:79;;:::i;:::-;16092:122;16240:6;16223:231;16257:6;16252:3;16249:15;16223:231;;;16332:3;16361:48;16405:3;16393:10;16361:48;:::i;:::-;16356:3;16349:61;16439:4;16434:3;16430:14;16423:21;;16299:155;16283:4;16278:3;16274:14;16267:21;;16223:231;;;16227:21;15841:619;;15728:732;;;;;:::o;16483:385::-;16565:5;16614:3;16607:4;16599:6;16595:17;16591:27;16581:122;;16622:79;;:::i;:::-;16581:122;16732:6;16726:13;16757:105;16858:3;16850:6;16843:4;16835:6;16831:17;16757:105;:::i;:::-;16748:114;;16571:297;16483:385;;;;:::o;16874:554::-;16969:6;17018:2;17006:9;16997:7;16993:23;16989:32;16986:119;;;17024:79;;:::i;:::-;16986:119;17165:1;17154:9;17150:17;17144:24;17195:18;17187:6;17184:30;17181:117;;;17217:79;;:::i;:::-;17181:117;17322:89;17403:7;17394:6;17383:9;17379:22;17322:89;:::i;:::-;17312:99;;17115:306;16874:554;;;;:::o;17434:634::-;17655:4;17693:2;17682:9;17678:18;17670:26;;17742:9;17736:4;17732:20;17728:1;17717:9;17713:17;17706:47;17770:108;17873:4;17864:6;17770:108;:::i;:::-;17762:116;;17925:9;17919:4;17915:20;17910:2;17899:9;17895:18;17888:48;17953:108;18056:4;18047:6;17953:108;:::i;:::-;17945:116;;17434:634;;;;;:::o;18074:169::-;18214:21;18210:1;18202:6;18198:14;18191:45;18074:169;:::o;18249:366::-;18391:3;18412:67;18476:2;18471:3;18412:67;:::i;:::-;18405:74;;18488:93;18577:3;18488:93;:::i;:::-;18606:2;18601:3;18597:12;18590:19;;18249:366;;;:::o;18621:419::-;18787:4;18825:2;18814:9;18810:18;18802:26;;18874:9;18868:4;18864:20;18860:1;18849:9;18845:17;18838:47;18902:131;19028:4;18902:131;:::i;:::-;18894:139;;18621:419;;;:::o;19046:234::-;19186:34;19182:1;19174:6;19170:14;19163:58;19255:17;19250:2;19242:6;19238:15;19231:42;19046:234;:::o;19286:366::-;19428:3;19449:67;19513:2;19508:3;19449:67;:::i;:::-;19442:74;;19525:93;19614:3;19525:93;:::i;:::-;19643:2;19638:3;19634:12;19627:19;;19286:366;;;:::o;19658:419::-;19824:4;19862:2;19851:9;19847:18;19839:26;;19911:9;19905:4;19901:20;19897:1;19886:9;19882:17;19875:47;19939:131;20065:4;19939:131;:::i;:::-;19931:139;;19658:419;;;:::o;20083:148::-;20185:11;20222:3;20207:18;;20083:148;;;;:::o;20237:173::-;20377:25;20373:1;20365:6;20361:14;20354:49;20237:173;:::o;20416:402::-;20576:3;20597:85;20679:2;20674:3;20597:85;:::i;:::-;20590:92;;20691:93;20780:3;20691:93;:::i;:::-;20809:2;20804:3;20800:12;20793:19;;20416:402;;;:::o;20824:99::-;20876:6;20910:5;20904:12;20894:22;;20824:99;;;:::o;20929:307::-;20997:1;21007:113;21021:6;21018:1;21015:13;21007:113;;;21106:1;21101:3;21097:11;21091:18;21087:1;21082:3;21078:11;21071:39;21043:2;21040:1;21036:10;21031:15;;21007:113;;;21138:6;21135:1;21132:13;21129:101;;;21218:1;21209:6;21204:3;21200:16;21193:27;21129:101;20978:258;20929:307;;;:::o;21242:377::-;21348:3;21376:39;21409:5;21376:39;:::i;:::-;21431:89;21513:6;21508:3;21431:89;:::i;:::-;21424:96;;21529:52;21574:6;21569:3;21562:4;21555:5;21551:16;21529:52;:::i;:::-;21606:6;21601:3;21597:16;21590:23;;21352:267;21242:377;;;;:::o;21625:167::-;21765:19;21761:1;21753:6;21749:14;21742:43;21625:167;:::o;21798:402::-;21958:3;21979:85;22061:2;22056:3;21979:85;:::i;:::-;21972:92;;22073:93;22162:3;22073:93;:::i;:::-;22191:2;22186:3;22182:12;22175:19;;21798:402;;;:::o;22206:967::-;22588:3;22610:148;22754:3;22610:148;:::i;:::-;22603:155;;22775:95;22866:3;22857:6;22775:95;:::i;:::-;22768:102;;22887:148;23031:3;22887:148;:::i;:::-;22880:155;;23052:95;23143:3;23134:6;23052:95;:::i;:::-;23045:102;;23164:3;23157:10;;22206:967;;;;;:::o;23179:364::-;23267:3;23295:39;23328:5;23295:39;:::i;:::-;23350:71;23414:6;23409:3;23350:71;:::i;:::-;23343:78;;23430:52;23475:6;23470:3;23463:4;23456:5;23452:16;23430:52;:::i;:::-;23507:29;23529:6;23507:29;:::i;:::-;23502:3;23498:39;23491:46;;23271:272;23179:364;;;;:::o;23549:313::-;23662:4;23700:2;23689:9;23685:18;23677:26;;23749:9;23743:4;23739:20;23735:1;23724:9;23720:17;23713:47;23777:78;23850:4;23841:6;23777:78;:::i;:::-;23769:86;;23549:313;;;;:::o;23868:348::-;23908:7;23931:20;23949:1;23931:20;:::i;:::-;23926:25;;23965:20;23983:1;23965:20;:::i;:::-;23960:25;;24153:1;24085:66;24081:74;24078:1;24075:81;24070:1;24063:9;24056:17;24052:105;24049:131;;;24160:18;;:::i;:::-;24049:131;24208:1;24205;24201:9;24190:20;;23868:348;;;;:::o;24222:305::-;24262:3;24281:20;24299:1;24281:20;:::i;:::-;24276:25;;24315:20;24333:1;24315:20;:::i;:::-;24310:25;;24469:1;24401:66;24397:74;24394:1;24391:81;24388:107;;;24475:18;;:::i;:::-;24388:107;24519:1;24516;24512:9;24505:16;;24222:305;;;;:::o;24533:171::-;24572:3;24595:24;24613:5;24595:24;:::i;:::-;24586:33;;24641:4;24634:5;24631:15;24628:41;;;24649:18;;:::i;:::-;24628:41;24696:1;24689:5;24685:13;24678:20;;24533:171;;;:::o;24710:182::-;24850:34;24846:1;24838:6;24834:14;24827:58;24710:182;:::o;24898:366::-;25040:3;25061:67;25125:2;25120:3;25061:67;:::i;:::-;25054:74;;25137:93;25226:3;25137:93;:::i;:::-;25255:2;25250:3;25246:12;25239:19;;24898:366;;;:::o;25270:419::-;25436:4;25474:2;25463:9;25459:18;25451:26;;25523:9;25517:4;25513:20;25509:1;25498:9;25494:17;25487:47;25551:131;25677:4;25551:131;:::i;:::-;25543:139;;25270:419;;;:::o;25695:191::-;25735:4;25755:20;25773:1;25755:20;:::i;:::-;25750:25;;25789:20;25807:1;25789:20;:::i;:::-;25784:25;;25828:1;25825;25822:8;25819:34;;;25833:18;;:::i;:::-;25819:34;25878:1;25875;25871:9;25863:17;;25695:191;;;;:::o;25892:180::-;25940:77;25937:1;25930:88;26037:4;26034:1;26027:15;26061:4;26058:1;26051:15", + "source": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.10;\n\nimport \"@openzeppelin/contracts/access/AccessControlEnumerable.sol\";\nimport \"../interfaces/IBEERC721.sol\";\n\ncontract NftDistributor is AccessControlEnumerable {\n bytes32 public constant MANAGE_ROLE = keccak256(\"MANAGE_ROLE\");\n\n // user address => nft ids\n mapping(address => uint256[]) public ownerToNFTs;\n // nft id => minted\n mapping(uint256 => bool) public nftMinted;\n\n IBEERC721 public nft;\n\n // NFT distributor open status\n bool public isOpen = false;\n\n event Minted(\n address indexed user,\n address indexed nft,\n uint256[] nftSIds,\n uint256[] nftTIds\n );\n\n event OpenStatusChange(bool indexed open);\n\n /**\n * @dev Contract constructor.\n *\n * Initializes the contract with the specified addresses and sets the admin and management roles.\n *\n * Parameters:\n * - _nftTarget: The address of NFT that will be minted by this contract. Need MINTER_ROLE\n * - _nftSource: The address of the source NFT that will check if user has mint permission.\n * - _manageAddress: The address that will have the MANAGE_ROLE assigned.\n */\n constructor(address _nftTarget, address[] memory _manageAddress) {\n // Set up the ADMIN_ROLE and MANAGE_ROLE\n _setRoleAdmin(MANAGE_ROLE, DEFAULT_ADMIN_ROLE);\n\n // Grant the ADMIN_ROLE to the deployer and to the contract itself\n _setupRole(DEFAULT_ADMIN_ROLE, _msgSender());\n\n // Grant the MANAGE_ROLE to the specified address\n for (uint256 i = 0; i < _manageAddress.length; ++i) {\n _setupRole(MANAGE_ROLE, _manageAddress[i]);\n }\n\n // Initialize the nft contract with IBEERC721 interface\n nft = IBEERC721(_nftTarget);\n }\n\n /**\n * @dev Modifier that checks if the caller has the MANAGE_ROLE.\n *\n * The function uses the _checkRole() function from the AccessControl library.\n * If the check is successful, the code defined by the function that uses this modifier is executed.\n */\n modifier onlyManager() {\n // Check if the caller has the MANAGE_ROLE\n _checkRole(MANAGE_ROLE, _msgSender());\n // If the check is successful, execute the code in the function that uses this modifier\n _;\n }\n\n function updateOpenStatus(bool _open) external onlyManager {\n require(isOpen != _open, \"Open status is same\");\n isOpen = _open;\n emit OpenStatusChange(_open);\n }\n\n function mintNft(uint256 count) external {\n require(isOpen, \"NFT distributor is not open\");\n address _user = _msgSender();\n // Check that there are enough mintable NFTs\n require(count <= getMintableCount(_user), \"Mintable count is not enough\");\n // Get the array of the user's owned NFTs\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize variables\n uint256 index = 0;\n uint256[] memory nftSource = new uint256[](count);\n\n // Loop through the user's owned NFTs\n for (uint256 i = 0; i < nfts.length; i++) {\n uint256 nftSId = nfts[i];\n // Check if the NFT is mintable\n if (!nftMinted[nftSId] && index < count) {\n // Add the NFT's source ID to the list of sources\n nftSource[index] = nftSId;\n nftMinted[nftSId] = true;\n // Mint the NFT to the user's address\n index++;\n }\n }\n uint256[] memory _nftIds = nft.batchMint(_user, count);\n // Emit event with details of the minting operation\n emit Minted(_user, address(nft), nftSource, _nftIds);\n }\n\n /**\n * @dev The addNFTData function adds an array of NFT IDs to the list of NFT IDs owned by a user.\n * mintToUser method would check if target user had permission to mint NFTs.\n *\n * Only functions called by an address with the MANAGE_ROLE permission can access this function.\n * The function takes in the address of the user and an array of NFT IDs. It then loops through the array\n * of NFT IDs, and adds each one to the end of the array of NFTs owned by that user to update their ownership data.\n *\n * @param _user - The address of the user being updated with new NFT data\n * @param _nftIds - An array of NFT IDs being added to the user's NFT data\n */\n function addNFTData(\n address _user,\n uint256[] calldata _nftIds\n ) external onlyManager {\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < _nftIds.length; i++) {\n // Add each NFT ID to the end of the array of NFTs owned by the user\n ownerToNFTs[_user].push(_nftIds[i]);\n }\n }\n\n /**\n * @dev The getMintableCount function gets the number of NFTs owned by a user that have not yet been minted.\n *\n * This is a read-only function, meaning it doesn't modify the state of the blockchain.\n * It takes in the address of the user whose mintable count is being determined,\n * and returns the number of NFTs owned by the user that have not yet been minted.\n *\n * @param _user - The address of the user whose mintable count is being determined\n * @return count - The number of NFTs owned by the user that have not yet been minted\n */\n function getMintableCount(address _user) public view returns (uint256) {\n // Get an array of all NFT IDs owned by the user\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize count to zero\n uint256 count = 0;\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < nfts.length; i++) {\n // Get the NFT ID at this index of the loop\n uint256 nftAId = nfts[i];\n // Check if the NFT has not yet been minted\n if (!nftMinted[nftAId]) {\n // If the NFT has not yet been minted, increment the mintable count\n count++;\n }\n }\n // Return the final mintable count\n return count;\n }\n\n /**\n * @dev The getMintableNftIds function gets an array of NFT IDs owned by a user that have not yet been minted.\n *\n * This is a read-only function, meaning it doesn't modify the state of the blockchain.\n * It takes in the address of the user whose mintable NFT IDs are being determined,\n * and returns an array of the NFT IDs owned by the user that have not yet been minted.\n *\n * @param _user - The address of the user whose mintable NFT IDs are being determined\n * @return mintableNftIds - An array of the NFT IDs owned by the user that have not yet been minted\n */\n function getMintableNftIds(\n address _user\n ) external view returns (uint256[] memory) {\n // Get an array of all NFT IDs owned by the user\n uint256[] memory nfts = ownerToNFTs[_user];\n // Initialize an array for mintable NFT IDs with the same length as the array of all NFT IDs\n uint256[] memory mintableNftIds = new uint256[](nfts.length);\n // Initialize an index counter to zero\n uint256 index = 0;\n // Loop through the array of NFT IDs\n for (uint256 i = 0; i < nfts.length; i++) {\n // Get the NFT ID at this index of the loop\n uint256 nftId = nfts[i];\n // Check if the NFT has not yet been minted\n if (!nftMinted[nftId]) {\n // If the NFT has not yet been minted, add it to the mintable NFT IDs array\n mintableNftIds[index] = nftId;\n // Increment the index counter\n index++;\n }\n }\n // Return the array of mintable NFT IDs\n return mintableNftIds;\n }\n}\n", "sourcePath": "/Users/zhl/Documents/workspace/crypto/becrypto/contracts/logic/NftDistributor.sol", "ast": { "absolutePath": "project:/contracts/logic/NftDistributor.sol", "exportedSymbols": { "AccessControl": [ - 308 + 315 ], "AccessControlEnumerable": [ - 433 + 440 ], "Context": [ - 669 + 676 ], "ERC165": [ - 896 + 929 ], "EnumerableSet": [ - 1507 + 2525 ], "IAccessControl": [ - 506 + 513 ], "IAccessControlEnumerable": [ - 531 + 538 ], "IBEERC721": [ - 1551 + 2569 ], "IERC165": [ - 908 + 941 ], "IERC721": [ - 647 + 654 + ], + "Math": [ + 1807 ], "NftDistributor": [ - 1946 + 2964 + ], + "SignedMath": [ + 1912 ], "Strings": [ - 872 + 905 ] }, - "id": 1947, + "id": 2965, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1553, + "id": 2571, "literals": [ "solidity", "0.8", ".10" ], "nodeType": "PragmaDirective", - "src": "32:23:11" + "src": "32:23:13" }, { "absolutePath": "@openzeppelin/contracts/access/AccessControlEnumerable.sol", "file": "@openzeppelin/contracts/access/AccessControlEnumerable.sol", - "id": 1554, + "id": 2572, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1947, - "sourceUnit": 434, - "src": "57:68:11", + "scope": 2965, + "sourceUnit": 441, + "src": "57:68:13", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "project:/contracts/interfaces/IBEERC721.sol", "file": "../interfaces/IBEERC721.sol", - "id": 1555, + "id": 2573, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1947, - "sourceUnit": 1552, - "src": "126:37:11", + "scope": 2965, + "sourceUnit": 2570, + "src": "126:37:13", "symbolAliases": [], "unitAlias": "" }, @@ -14991,46 +14979,46 @@ "baseContracts": [ { "baseName": { - "id": 1556, + "id": 2574, "name": "AccessControlEnumerable", "nodeType": "IdentifierPath", - "referencedDeclaration": 433, - "src": "192:23:11" + "referencedDeclaration": 440, + "src": "192:23:13" }, - "id": 1557, + "id": 2575, "nodeType": "InheritanceSpecifier", - "src": "192:23:11" + "src": "192:23:13" } ], "canonicalName": "NftDistributor", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 1946, + "id": 2964, "linearizedBaseContracts": [ - 1946, - 433, - 308, - 896, - 908, - 531, - 506, - 669 + 2964, + 440, + 315, + 929, + 941, + 538, + 513, + 676 ], "name": "NftDistributor", - "nameLocation": "174:14:11", + "nameLocation": "174:14:13", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, "functionSelector": "60a4b76a", - "id": 1562, + "id": 2580, "mutability": "constant", "name": "MANAGE_ROLE", - "nameLocation": "244:11:11", + "nameLocation": "244:11:13", "nodeType": "VariableDeclaration", - "scope": 1946, - "src": "220:62:11", + "scope": 2964, + "src": "220:62:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15038,10 +15026,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1558, + "id": 2576, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "220:7:11", + "src": "220:7:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15051,14 +15039,14 @@ "arguments": [ { "hexValue": "4d414e4147455f524f4c45", - "id": 1560, + "id": 2578, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "268:13:11", + "src": "268:13:13", "typeDescriptions": { "typeIdentifier": "t_stringliteral_a076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091", "typeString": "literal_string \"MANAGE_ROLE\"" @@ -15073,18 +15061,18 @@ "typeString": "literal_string \"MANAGE_ROLE\"" } ], - "id": 1559, + "id": 2577, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "258:9:11", + "src": "258:9:13", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 1561, + "id": 2579, "isConstant": false, "isLValue": false, "isPure": true, @@ -15092,7 +15080,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "258:24:11", + "src": "258:24:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -15104,13 +15092,13 @@ { "constant": false, "functionSelector": "ad0f93ad", - "id": 1567, + "id": 2585, "mutability": "mutable", "name": "ownerToNFTs", - "nameLocation": "353:11:11", + "nameLocation": "353:11:13", "nodeType": "VariableDeclaration", - "scope": 1946, - "src": "316:48:11", + "scope": 2964, + "src": "316:48:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15118,37 +15106,37 @@ "typeString": "mapping(address => uint256[])" }, "typeName": { - "id": 1566, + "id": 2584, "keyType": { - "id": 1563, + "id": 2581, "name": "address", "nodeType": "ElementaryTypeName", - "src": "324:7:11", + "src": "324:7:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "316:29:11", + "src": "316:29:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(address => uint256[])" }, "valueType": { "baseType": { - "id": 1564, + "id": 2582, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "335:7:11", + "src": "335:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1565, + "id": 2583, "nodeType": "ArrayTypeName", - "src": "335:9:11", + "src": "335:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -15160,13 +15148,13 @@ { "constant": false, "functionSelector": "ffd68f15", - "id": 1571, + "id": 2589, "mutability": "mutable", "name": "nftMinted", - "nameLocation": "422:9:11", + "nameLocation": "422:9:13", "nodeType": "VariableDeclaration", - "scope": 1946, - "src": "390:41:11", + "scope": 2964, + "src": "390:41:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15174,28 +15162,28 @@ "typeString": "mapping(uint256 => bool)" }, "typeName": { - "id": 1570, + "id": 2588, "keyType": { - "id": 1568, + "id": 2586, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "398:7:11", + "src": "398:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "390:24:11", + "src": "390:24:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" }, "valueType": { - "id": 1569, + "id": 2587, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "409:4:11", + "src": "409:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15207,33 +15195,33 @@ { "constant": false, "functionSelector": "47ccca02", - "id": 1574, + "id": 2592, "mutability": "mutable", "name": "nft", - "nameLocation": "453:3:11", + "nameLocation": "453:3:13", "nodeType": "VariableDeclaration", - "scope": 1946, - "src": "436:20:11", + "scope": 2964, + "src": "436:20:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" }, "typeName": { - "id": 1573, + "id": 2591, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1572, + "id": 2590, "name": "IBEERC721", "nodeType": "IdentifierPath", - "referencedDeclaration": 1551, - "src": "436:9:11" + "referencedDeclaration": 2569, + "src": "436:9:13" }, - "referencedDeclaration": 1551, - "src": "436:9:11", + "referencedDeclaration": 2569, + "src": "436:9:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } }, @@ -15242,13 +15230,13 @@ { "constant": false, "functionSelector": "47535d7b", - "id": 1577, + "id": 2595, "mutability": "mutable", "name": "isOpen", - "nameLocation": "506:6:11", + "nameLocation": "506:6:13", "nodeType": "VariableDeclaration", - "scope": 1946, - "src": "494:25:11", + "scope": 2964, + "src": "494:26:13", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15256,53 +15244,53 @@ "typeString": "bool" }, "typeName": { - "id": 1575, + "id": 2593, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "494:4:11", + "src": "494:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": { - "hexValue": "74727565", - "id": 1576, + "hexValue": "66616c7365", + "id": 2594, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "515:4:11", + "src": "515:5:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, - "value": "true" + "value": "false" }, "visibility": "public" }, { "anonymous": false, - "id": 1589, + "id": 2607, "name": "Minted", - "nameLocation": "530:6:11", + "nameLocation": "531:6:13", "nodeType": "EventDefinition", "parameters": { - "id": 1588, + "id": 2606, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1579, + "id": 2597, "indexed": true, "mutability": "mutable", "name": "user", - "nameLocation": "558:4:11", + "nameLocation": "559:4:13", "nodeType": "VariableDeclaration", - "scope": 1589, - "src": "542:20:11", + "scope": 2607, + "src": "543:20:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15310,10 +15298,10 @@ "typeString": "address" }, "typeName": { - "id": 1578, + "id": 2596, "name": "address", "nodeType": "ElementaryTypeName", - "src": "542:7:11", + "src": "543:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -15324,14 +15312,14 @@ }, { "constant": false, - "id": 1581, + "id": 2599, "indexed": true, "mutability": "mutable", "name": "nft", - "nameLocation": "584:3:11", + "nameLocation": "585:3:13", "nodeType": "VariableDeclaration", - "scope": 1589, - "src": "568:19:11", + "scope": 2607, + "src": "569:19:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15339,10 +15327,10 @@ "typeString": "address" }, "typeName": { - "id": 1580, + "id": 2598, "name": "address", "nodeType": "ElementaryTypeName", - "src": "568:7:11", + "src": "569:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -15353,14 +15341,14 @@ }, { "constant": false, - "id": 1584, + "id": 2602, "indexed": false, "mutability": "mutable", "name": "nftSIds", - "nameLocation": "603:7:11", + "nameLocation": "604:7:13", "nodeType": "VariableDeclaration", - "scope": 1589, - "src": "593:17:11", + "scope": 2607, + "src": "594:17:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15369,18 +15357,18 @@ }, "typeName": { "baseType": { - "id": 1582, + "id": 2600, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "593:7:11", + "src": "594:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1583, + "id": 2601, "nodeType": "ArrayTypeName", - "src": "593:9:11", + "src": "594:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -15390,14 +15378,14 @@ }, { "constant": false, - "id": 1587, + "id": 2605, "indexed": false, "mutability": "mutable", "name": "nftTIds", - "nameLocation": "626:7:11", + "nameLocation": "627:7:13", "nodeType": "VariableDeclaration", - "scope": 1589, - "src": "616:17:11", + "scope": 2607, + "src": "617:17:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15406,18 +15394,18 @@ }, "typeName": { "baseType": { - "id": 1585, + "id": 2603, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "616:7:11", + "src": "617:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1586, + "id": 2604, "nodeType": "ArrayTypeName", - "src": "616:9:11", + "src": "617:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -15426,30 +15414,30 @@ "visibility": "internal" } ], - "src": "536:101:11" + "src": "537:101:13" }, - "src": "524:114:11" + "src": "525:114:13" }, { "anonymous": false, - "id": 1593, + "id": 2611, "name": "OpenStatusChange", - "nameLocation": "648:16:11", + "nameLocation": "649:16:13", "nodeType": "EventDefinition", "parameters": { - "id": 1592, + "id": 2610, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1591, + "id": 2609, "indexed": true, "mutability": "mutable", "name": "open", - "nameLocation": "678:4:11", + "nameLocation": "679:4:13", "nodeType": "VariableDeclaration", - "scope": 1593, - "src": "665:17:11", + "scope": 2611, + "src": "666:17:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15457,10 +15445,10 @@ "typeString": "bool" }, "typeName": { - "id": 1590, + "id": 2608, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "665:4:11", + "src": "666:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15469,38 +15457,38 @@ "visibility": "internal" } ], - "src": "664:19:11" + "src": "665:19:13" }, - "src": "642:42:11" + "src": "643:42:13" }, { "body": { - "id": 1639, + "id": 2657, "nodeType": "Block", - "src": "1187:487:11", + "src": "1188:487:13", "statements": [ { "expression": { "arguments": [ { - "id": 1603, + "id": 2621, "name": "MANAGE_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1562, - "src": "1252:11:11", + "referencedDeclaration": 2580, + "src": "1253:11:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 1604, + "id": 2622, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "1265:18:11", + "src": "1266:18:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15518,18 +15506,18 @@ "typeString": "bytes32" } ], - "id": 1602, + "id": 2620, "name": "_setRoleAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 244, - "src": "1238:13:11", + "referencedDeclaration": 251, + "src": "1239:13:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (bytes32,bytes32)" } }, - "id": 1605, + "id": 2623, "isConstant": false, "isLValue": false, "isPure": false, @@ -15537,27 +15525,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1238:46:11", + "src": "1239:46:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1606, + "id": 2624, "nodeType": "ExpressionStatement", - "src": "1238:46:11" + "src": "1239:46:13" }, { "expression": { "arguments": [ { - "id": 1608, + "id": 2626, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "1373:18:11", + "src": "1374:18:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15567,18 +15555,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1609, + "id": 2627, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "1393:10:11", + "referencedDeclaration": 666, + "src": "1394:10:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1610, + "id": 2628, "isConstant": false, "isLValue": false, "isPure": false, @@ -15586,7 +15574,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1393:12:11", + "src": "1394:12:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -15605,18 +15593,18 @@ "typeString": "address" } ], - "id": 1607, + "id": 2625, "name": "_setupRole", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "1362:10:11", + "referencedDeclaration": 223, + "src": "1363:10:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 1611, + "id": 2629, "isConstant": false, "isLValue": false, "isPure": false, @@ -15624,33 +15612,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1362:44:11", + "src": "1363:44:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1612, + "id": 2630, "nodeType": "ExpressionStatement", - "src": "1362:44:11" + "src": "1363:44:13" }, { "body": { - "id": 1631, + "id": 2649, "nodeType": "Block", - "src": "1519:57:11", + "src": "1520:57:13", "statements": [ { "expression": { "arguments": [ { - "id": 1625, + "id": 2643, "name": "MANAGE_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1562, - "src": "1538:11:11", + "referencedDeclaration": 2580, + "src": "1539:11:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15658,25 +15646,25 @@ }, { "baseExpression": { - "id": 1626, + "id": 2644, "name": "_manageAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1599, - "src": "1551:14:11", + "referencedDeclaration": 2617, + "src": "1552:14:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[] memory" } }, - "id": 1628, + "id": 2646, "indexExpression": { - "id": 1627, + "id": 2645, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1614, - "src": "1566:1:11", + "referencedDeclaration": 2632, + "src": "1567:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15687,7 +15675,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1551:17:11", + "src": "1552:17:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15705,18 +15693,18 @@ "typeString": "address" } ], - "id": 1624, + "id": 2642, "name": "_setupRole", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "1527:10:11", + "referencedDeclaration": 223, + "src": "1528:10:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 1629, + "id": 2647, "isConstant": false, "isLValue": false, "isPure": false, @@ -15724,16 +15712,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1527:42:11", + "src": "1528:42:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1630, + "id": 2648, "nodeType": "ExpressionStatement", - "src": "1527:42:11" + "src": "1528:42:13" } ] }, @@ -15742,18 +15730,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1620, + "id": 2638, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1617, + "id": 2635, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1614, - "src": "1487:1:11", + "referencedDeclaration": 2632, + "src": "1488:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15763,51 +15751,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 1618, + "id": 2636, "name": "_manageAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1599, - "src": "1491:14:11", + "referencedDeclaration": 2617, + "src": "1492:14:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[] memory" } }, - "id": 1619, + "id": 2637, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "1491:21:11", + "src": "1492:21:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1487:25:11", + "src": "1488:25:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1632, + "id": 2650, "initializationExpression": { "assignments": [ - 1614 + 2632 ], "declarations": [ { "constant": false, - "id": 1614, + "id": 2632, "mutability": "mutable", "name": "i", - "nameLocation": "1480:1:11", + "nameLocation": "1481:1:13", "nodeType": "VariableDeclaration", - "scope": 1632, - "src": "1472:9:11", + "scope": 2650, + "src": "1473:9:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15815,10 +15803,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1613, + "id": 2631, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1472:7:11", + "src": "1473:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15827,17 +15815,17 @@ "visibility": "internal" } ], - "id": 1616, + "id": 2634, "initialValue": { "hexValue": "30", - "id": 1615, + "id": 2633, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1484:1:11", + "src": "1485:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -15845,11 +15833,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "1472:13:11" + "src": "1473:13:13" }, "loopExpression": { "expression": { - "id": 1622, + "id": 2640, "isConstant": false, "isLValue": false, "isPure": false, @@ -15857,14 +15845,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": true, - "src": "1514:3:11", + "src": "1515:3:13", "subExpression": { - "id": 1621, + "id": 2639, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1614, - "src": "1516:1:11", + "referencedDeclaration": 2632, + "src": "1517:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15875,29 +15863,29 @@ "typeString": "uint256" } }, - "id": 1623, + "id": 2641, "nodeType": "ExpressionStatement", - "src": "1514:3:11" + "src": "1515:3:13" }, "nodeType": "ForStatement", - "src": "1467:109:11" + "src": "1468:109:13" }, { "expression": { - "id": 1637, + "id": 2655, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1633, + "id": 2651, "name": "nft", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1574, - "src": "1642:3:11", + "referencedDeclaration": 2592, + "src": "1643:3:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } }, @@ -15906,12 +15894,12 @@ "rightHandSide": { "arguments": [ { - "id": 1635, + "id": 2653, "name": "_nftTarget", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1596, - "src": "1658:10:11", + "referencedDeclaration": 2614, + "src": "1659:10:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15925,18 +15913,18 @@ "typeString": "address" } ], - "id": 1634, + "id": 2652, "name": "IBEERC721", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "1648:9:11", + "referencedDeclaration": 2569, + "src": "1649:9:13", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IBEERC721_$1551_$", + "typeIdentifier": "t_type$_t_contract$_IBEERC721_$2569_$", "typeString": "type(contract IBEERC721)" } }, - "id": 1636, + "id": 2654, "isConstant": false, "isLValue": false, "isPure": false, @@ -15944,32 +15932,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1648:21:11", + "src": "1649:21:13", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } }, - "src": "1642:27:11", + "src": "1643:27:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } }, - "id": 1638, + "id": 2656, "nodeType": "ExpressionStatement", - "src": "1642:27:11" + "src": "1643:27:13" } ] }, "documentation": { - "id": 1594, + "id": 2612, "nodeType": "StructuredDocumentation", - "src": "688:431:11", + "src": "689:431:13", "text": " @dev Contract constructor.\n Initializes the contract with the specified addresses and sets the admin and management roles.\n Parameters:\n - _nftTarget: The address of NFT that will be minted by this contract. Need MINTER_ROLE\n - _nftSource: The address of the source NFT that will check if user has mint permission.\n - _manageAddress: The address that will have the MANAGE_ROLE assigned." }, - "id": 1640, + "id": 2658, "implemented": true, "kind": "constructor", "modifiers": [], @@ -15977,18 +15965,18 @@ "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 1600, + "id": 2618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1596, + "id": 2614, "mutability": "mutable", "name": "_nftTarget", - "nameLocation": "1142:10:11", + "nameLocation": "1143:10:13", "nodeType": "VariableDeclaration", - "scope": 1640, - "src": "1134:18:11", + "scope": 2658, + "src": "1135:18:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15996,10 +15984,10 @@ "typeString": "address" }, "typeName": { - "id": 1595, + "id": 2613, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1134:7:11", + "src": "1135:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -16010,13 +15998,13 @@ }, { "constant": false, - "id": 1599, + "id": 2617, "mutability": "mutable", "name": "_manageAddress", - "nameLocation": "1171:14:11", + "nameLocation": "1172:14:13", "nodeType": "VariableDeclaration", - "scope": 1640, - "src": "1154:31:11", + "scope": 2658, + "src": "1155:31:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16025,19 +16013,19 @@ }, "typeName": { "baseType": { - "id": 1597, + "id": 2615, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1154:7:11", + "src": "1155:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1598, + "id": 2616, "nodeType": "ArrayTypeName", - "src": "1154:9:11", + "src": "1155:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -16046,36 +16034,36 @@ "visibility": "internal" } ], - "src": "1133:53:11" + "src": "1134:53:13" }, "returnParameters": { - "id": 1601, + "id": 2619, "nodeType": "ParameterList", "parameters": [], - "src": "1187:0:11" + "src": "1188:0:13" }, - "scope": 1946, - "src": "1122:552:11", + "scope": 2964, + "src": "1123:552:13", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1650, + "id": 2668, "nodeType": "Block", - "src": "1968:194:11", + "src": "1969:194:13", "statements": [ { "expression": { "arguments": [ { - "id": 1644, + "id": 2662, "name": "MANAGE_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1562, - "src": "2032:11:11", + "referencedDeclaration": 2580, + "src": "2033:11:13", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16085,18 +16073,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1645, + "id": 2663, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "2045:10:11", + "referencedDeclaration": 666, + "src": "2046:10:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 1646, + "id": 2664, "isConstant": false, "isLValue": false, "isPure": false, @@ -16104,7 +16092,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2045:12:11", + "src": "2046:12:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -16123,18 +16111,21 @@ "typeString": "address" } ], - "id": 1643, + "id": 2661, "name": "_checkRole", "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 124, - "src": "2021:10:11", + "overloadedDeclarations": [ + 92, + 131 + ], + "referencedDeclaration": 131, + "src": "2022:10:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address) view" } }, - "id": 1647, + "id": 2665, "isConstant": false, "isLValue": false, "isPure": false, @@ -16142,49 +16133,49 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2021:37:11", + "src": "2022:37:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1648, + "id": 2666, "nodeType": "ExpressionStatement", - "src": "2021:37:11" + "src": "2022:37:13" }, { - "id": 1649, + "id": 2667, "nodeType": "PlaceholderStatement", - "src": "2156:1:11" + "src": "2157:1:13" } ] }, "documentation": { - "id": 1641, + "id": 2659, "nodeType": "StructuredDocumentation", - "src": "1678:264:11", + "src": "1679:264:13", "text": " @dev Modifier that checks if the caller has the MANAGE_ROLE.\n The function uses the _checkRole() function from the AccessControl library.\n If the check is successful, the code defined by the function that uses this modifier is executed." }, - "id": 1651, + "id": 2669, "name": "onlyManager", - "nameLocation": "1954:11:11", + "nameLocation": "1955:11:13", "nodeType": "ModifierDefinition", "parameters": { - "id": 1642, + "id": 2660, "nodeType": "ParameterList", "parameters": [], - "src": "1965:2:11" + "src": "1966:2:13" }, - "src": "1945:217:11", + "src": "1946:217:13", "virtual": false, "visibility": "internal" }, { "body": { - "id": 1673, + "id": 2691, "nodeType": "Block", - "src": "2225:112:11", + "src": "2226:112:13", "statements": [ { "expression": { @@ -16194,18 +16185,18 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1661, + "id": 2679, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1659, + "id": 2677, "name": "isOpen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1577, - "src": "2239:6:11", + "referencedDeclaration": 2595, + "src": "2240:6:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16214,18 +16205,18 @@ "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { - "id": 1660, + "id": 2678, "name": "_open", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1653, - "src": "2249:5:11", + "referencedDeclaration": 2671, + "src": "2250:5:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "2239:15:11", + "src": "2240:15:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16233,14 +16224,14 @@ }, { "hexValue": "4f70656e207374617475732069732073616d65", - "id": 1662, + "id": 2680, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2256:21:11", + "src": "2257:21:13", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e3e050e2ce450b3b7a09abb0085b9f82d70bd3d19685e6e9fe38cfe7c2e22c0d", "typeString": "literal_string \"Open status is same\"" @@ -16259,7 +16250,7 @@ "typeString": "literal_string \"Open status is same\"" } ], - "id": 1658, + "id": 2676, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16267,13 +16258,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "2231:7:11", + "src": "2232:7:13", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1663, + "id": 2681, "isConstant": false, "isLValue": false, "isPure": false, @@ -16281,31 +16272,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2231:47:11", + "src": "2232:47:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1664, + "id": 2682, "nodeType": "ExpressionStatement", - "src": "2231:47:11" + "src": "2232:47:13" }, { "expression": { - "id": 1667, + "id": 2685, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 1665, + "id": 2683, "name": "isOpen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1577, - "src": "2284:6:11", + "referencedDeclaration": 2595, + "src": "2285:6:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16314,37 +16305,37 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1666, + "id": 2684, "name": "_open", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1653, - "src": "2293:5:11", + "referencedDeclaration": 2671, + "src": "2294:5:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "2284:14:11", + "src": "2285:14:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1668, + "id": 2686, "nodeType": "ExpressionStatement", - "src": "2284:14:11" + "src": "2285:14:13" }, { "eventCall": { "arguments": [ { - "id": 1670, + "id": 2688, "name": "_open", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1653, - "src": "2326:5:11", + "referencedDeclaration": 2671, + "src": "2327:5:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16358,18 +16349,18 @@ "typeString": "bool" } ], - "id": 1669, + "id": 2687, "name": "OpenStatusChange", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1593, - "src": "2309:16:11", + "referencedDeclaration": 2611, + "src": "2310:16:13", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bool_$returns$__$", "typeString": "function (bool)" } }, - "id": 1671, + "id": 2689, "isConstant": false, "isLValue": false, "isPure": false, @@ -16377,54 +16368,54 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2309:23:11", + "src": "2310:23:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1672, + "id": 2690, "nodeType": "EmitStatement", - "src": "2304:28:11" + "src": "2305:28:13" } ] }, "functionSelector": "29bc78c6", - "id": 1674, + "id": 2692, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1656, + "id": 2674, "kind": "modifierInvocation", "modifierName": { - "id": 1655, + "id": 2673, "name": "onlyManager", "nodeType": "IdentifierPath", - "referencedDeclaration": 1651, - "src": "2213:11:11" + "referencedDeclaration": 2669, + "src": "2214:11:13" }, "nodeType": "ModifierInvocation", - "src": "2213:11:11" + "src": "2214:11:13" } ], "name": "updateOpenStatus", - "nameLocation": "2175:16:11", + "nameLocation": "2176:16:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 1654, + "id": 2672, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1653, + "id": 2671, "mutability": "mutable", "name": "_open", - "nameLocation": "2197:5:11", + "nameLocation": "2198:5:13", "nodeType": "VariableDeclaration", - "scope": 1674, - "src": "2192:10:11", + "scope": 2692, + "src": "2193:10:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16432,10 +16423,10 @@ "typeString": "bool" }, "typeName": { - "id": 1652, + "id": 2670, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2192:4:11", + "src": "2193:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16444,36 +16435,36 @@ "visibility": "internal" } ], - "src": "2191:12:11" + "src": "2192:12:13" }, "returnParameters": { - "id": 1657, + "id": 2675, "nodeType": "ParameterList", "parameters": [], - "src": "2225:0:11" + "src": "2226:0:13" }, - "scope": 1946, - "src": "2166:171:11", + "scope": 2964, + "src": "2167:171:13", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 1787, + "id": 2805, "nodeType": "Block", - "src": "2952:973:11", + "src": "2383:1007:13", "statements": [ { "expression": { "arguments": [ { - "id": 1685, + "id": 2698, "name": "isOpen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1577, - "src": "2966:6:11", + "referencedDeclaration": 2595, + "src": "2397:6:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16481,14 +16472,14 @@ }, { "hexValue": "4e4654206469737472696275746f72206973206e6f74206f70656e", - "id": 1686, + "id": 2699, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2974:29:11", + "src": "2405:29:13", "typeDescriptions": { "typeIdentifier": "t_stringliteral_135c3291bc2e815fa2362801676581f5853c20deaafc5dda4430223b06f7646f", "typeString": "literal_string \"NFT distributor is not open\"" @@ -16507,7 +16498,7 @@ "typeString": "literal_string \"NFT distributor is not open\"" } ], - "id": 1684, + "id": 2697, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16515,13 +16506,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "2958:7:11", + "src": "2389:7:13", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1687, + "id": 2700, "isConstant": false, "isLValue": false, "isPure": false, @@ -16529,16 +16520,84 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2958:46:11", + "src": "2389:46:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1688, + "id": 2701, "nodeType": "ExpressionStatement", - "src": "2958:46:11" + "src": "2389:46:13" + }, + { + "assignments": [ + 2703 + ], + "declarations": [ + { + "constant": false, + "id": 2703, + "mutability": "mutable", + "name": "_user", + "nameLocation": "2449:5:13", + "nodeType": "VariableDeclaration", + "scope": 2805, + "src": "2441:13:13", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2702, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2441:7:13", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 2706, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2704, + "name": "_msgSender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 666, + "src": "2457:10:13", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2457:12:13", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2441:28:13" }, { "expression": { @@ -16548,18 +16607,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1694, + "id": 2712, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1690, + "id": 2708, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1679, - "src": "3067:5:11", + "referencedDeclaration": 2694, + "src": "2532:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16570,12 +16629,12 @@ "rightExpression": { "arguments": [ { - "id": 1692, + "id": 2710, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1677, - "src": "3093:5:11", + "referencedDeclaration": 2703, + "src": "2558:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16589,18 +16648,18 @@ "typeString": "address" } ], - "id": 1691, + "id": 2709, "name": "getMintableCount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1874, - "src": "3076:16:11", + "referencedDeclaration": 2892, + "src": "2541:16:13", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1693, + "id": 2711, "isConstant": false, "isLValue": false, "isPure": false, @@ -16608,14 +16667,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3076:23:11", + "src": "2541:23:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3067:32:11", + "src": "2532:32:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16623,14 +16682,14 @@ }, { "hexValue": "4d696e7461626c6520636f756e74206973206e6f7420656e6f756768", - "id": 1695, + "id": 2713, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3101:30:11", + "src": "2566:30:13", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c0532a597c4fcdca619b8bd483d77a931af948aaf6338ee552604b6087393e08", "typeString": "literal_string \"Mintable count is not enough\"" @@ -16649,7 +16708,7 @@ "typeString": "literal_string \"Mintable count is not enough\"" } ], - "id": 1689, + "id": 2707, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -16657,13 +16716,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "3059:7:11", + "src": "2524:7:13", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 1696, + "id": 2714, "isConstant": false, "isLValue": false, "isPure": false, @@ -16671,31 +16730,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3059:73:11", + "src": "2524:73:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1697, + "id": 2715, "nodeType": "ExpressionStatement", - "src": "3059:73:11" + "src": "2524:73:13" }, { "assignments": [ - 1702 + 2720 ], "declarations": [ { "constant": false, - "id": 1702, + "id": 2720, "mutability": "mutable", "name": "nfts", - "nameLocation": "3201:4:11", + "nameLocation": "2666:4:13", "nodeType": "VariableDeclaration", - "scope": 1787, - "src": "3184:21:11", + "scope": 2805, + "src": "2649:21:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16704,18 +16763,18 @@ }, "typeName": { "baseType": { - "id": 1700, + "id": 2718, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3184:7:11", + "src": "2649:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1701, + "id": 2719, "nodeType": "ArrayTypeName", - "src": "3184:9:11", + "src": "2649:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -16724,28 +16783,28 @@ "visibility": "internal" } ], - "id": 1706, + "id": 2724, "initialValue": { "baseExpression": { - "id": 1703, + "id": 2721, "name": "ownerToNFTs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "3208:11:11", + "referencedDeclaration": 2585, + "src": "2673:11:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(address => uint256[] storage ref)" } }, - "id": 1705, + "id": 2723, "indexExpression": { - "id": 1704, + "id": 2722, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1677, - "src": "3220:5:11", + "referencedDeclaration": 2703, + "src": "2685:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16756,29 +16815,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3208:18:11", + "src": "2673:18:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3184:42:11" + "src": "2649:42:13" }, { "assignments": [ - 1708 + 2726 ], "declarations": [ { "constant": false, - "id": 1708, + "id": 2726, "mutability": "mutable", "name": "index", - "nameLocation": "3268:5:11", + "nameLocation": "2733:5:13", "nodeType": "VariableDeclaration", - "scope": 1787, - "src": "3260:13:11", + "scope": 2805, + "src": "2725:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16786,10 +16845,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1707, + "id": 2725, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3260:7:11", + "src": "2725:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16798,17 +16857,17 @@ "visibility": "internal" } ], - "id": 1710, + "id": 2728, "initialValue": { "hexValue": "30", - "id": 1709, + "id": 2727, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3276:1:11", + "src": "2741:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -16816,22 +16875,22 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "3260:17:11" + "src": "2725:17:13" }, { "assignments": [ - 1715 + 2733 ], "declarations": [ { "constant": false, - "id": 1715, + "id": 2733, "mutability": "mutable", "name": "nftSource", - "nameLocation": "3300:9:11", + "nameLocation": "2765:9:13", "nodeType": "VariableDeclaration", - "scope": 1787, - "src": "3283:26:11", + "scope": 2805, + "src": "2748:26:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16840,18 +16899,18 @@ }, "typeName": { "baseType": { - "id": 1713, + "id": 2731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3283:7:11", + "src": "2748:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1714, + "id": 2732, "nodeType": "ArrayTypeName", - "src": "3283:9:11", + "src": "2748:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -16860,16 +16919,16 @@ "visibility": "internal" } ], - "id": 1721, + "id": 2739, "initialValue": { "arguments": [ { - "id": 1719, + "id": 2737, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1679, - "src": "3326:5:11", + "referencedDeclaration": 2694, + "src": "2791:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16883,38 +16942,38 @@ "typeString": "uint256" } ], - "id": 1718, + "id": 2736, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", - "src": "3312:13:11", + "src": "2777:13:13", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (uint256[] memory)" }, "typeName": { "baseType": { - "id": 1716, + "id": 2734, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3316:7:11", + "src": "2781:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1717, + "id": 2735, "nodeType": "ArrayTypeName", - "src": "3316:9:11", + "src": "2781:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } } }, - "id": 1720, + "id": 2738, "isConstant": false, "isLValue": false, "isPure": false, @@ -16922,7 +16981,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3312:20:11", + "src": "2777:20:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", @@ -16930,28 +16989,28 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "3283:49:11" + "src": "2748:49:13" }, { "body": { - "id": 1764, + "id": 2782, "nodeType": "Block", - "src": "3423:324:11", + "src": "2888:324:13", "statements": [ { "assignments": [ - 1734 + 2752 ], "declarations": [ { "constant": false, - "id": 1734, + "id": 2752, "mutability": "mutable", "name": "nftSId", - "nameLocation": "3439:6:11", + "nameLocation": "2904:6:13", "nodeType": "VariableDeclaration", - "scope": 1764, - "src": "3431:14:11", + "scope": 2782, + "src": "2896:14:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16959,10 +17018,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1733, + "id": 2751, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3431:7:11", + "src": "2896:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16971,28 +17030,28 @@ "visibility": "internal" } ], - "id": 1738, + "id": 2756, "initialValue": { "baseExpression": { - "id": 1735, + "id": 2753, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1702, - "src": "3448:4:11", + "referencedDeclaration": 2720, + "src": "2913:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1737, + "id": 2755, "indexExpression": { - "id": 1736, + "id": 2754, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1723, - "src": "3453:1:11", + "referencedDeclaration": 2741, + "src": "2918:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17003,14 +17062,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3448:7:11", + "src": "2913:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "3431:24:11" + "src": "2896:24:13" }, { "condition": { @@ -17018,13 +17077,13 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1746, + "id": 2764, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1742, + "id": 2760, "isConstant": false, "isLValue": false, "isPure": false, @@ -17032,28 +17091,28 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3505:18:11", + "src": "2970:18:13", "subExpression": { "baseExpression": { - "id": 1739, + "id": 2757, "name": "nftMinted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "3506:9:11", + "referencedDeclaration": 2589, + "src": "2971:9:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" } }, - "id": 1741, + "id": 2759, "indexExpression": { - "id": 1740, + "id": 2758, "name": "nftSId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "3516:6:11", + "referencedDeclaration": 2752, + "src": "2981:6:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17064,7 +17123,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3506:17:11", + "src": "2971:17:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17082,18 +17141,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1745, + "id": 2763, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1743, + "id": 2761, "name": "index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1708, - "src": "3527:5:11", + "referencedDeclaration": 2726, + "src": "2992:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17102,65 +17161,65 @@ "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { - "id": 1744, + "id": 2762, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1679, - "src": "3535:5:11", + "referencedDeclaration": 2694, + "src": "3000:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3527:13:11", + "src": "2992:13:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "3505:35:11", + "src": "2970:35:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1763, + "id": 2781, "nodeType": "IfStatement", - "src": "3501:240:11", + "src": "2966:240:13", "trueBody": { - "id": 1762, + "id": 2780, "nodeType": "Block", - "src": "3542:199:11", + "src": "3007:199:13", "statements": [ { "expression": { - "id": 1751, + "id": 2769, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1747, + "id": 2765, "name": "nftSource", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1715, - "src": "3610:9:11", + "referencedDeclaration": 2733, + "src": "3075:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1749, + "id": 2767, "indexExpression": { - "id": 1748, + "id": 2766, "name": "index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1708, - "src": "3620:5:11", + "referencedDeclaration": 2726, + "src": "3085:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17171,7 +17230,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3610:16:11", + "src": "3075:16:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17180,55 +17239,55 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1750, + "id": 2768, "name": "nftSId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "3629:6:11", + "referencedDeclaration": 2752, + "src": "3094:6:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3610:25:11", + "src": "3075:25:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1752, + "id": 2770, "nodeType": "ExpressionStatement", - "src": "3610:25:11" + "src": "3075:25:13" }, { "expression": { - "id": 1757, + "id": 2775, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1753, + "id": 2771, "name": "nftMinted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "3645:9:11", + "referencedDeclaration": 2589, + "src": "3110:9:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" } }, - "id": 1755, + "id": 2773, "indexExpression": { - "id": 1754, + "id": 2772, "name": "nftSId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1734, - "src": "3655:6:11", + "referencedDeclaration": 2752, + "src": "3120:6:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17239,7 +17298,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3645:17:11", + "src": "3110:17:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17249,33 +17308,33 @@ "operator": "=", "rightHandSide": { "hexValue": "74727565", - "id": 1756, + "id": 2774, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "3665:4:11", + "src": "3130:4:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, - "src": "3645:24:11", + "src": "3110:24:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1758, + "id": 2776, "nodeType": "ExpressionStatement", - "src": "3645:24:11" + "src": "3110:24:13" }, { "expression": { - "id": 1760, + "id": 2778, "isConstant": false, "isLValue": false, "isPure": false, @@ -17283,14 +17342,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "3725:7:11", + "src": "3190:7:13", "subExpression": { - "id": 1759, + "id": 2777, "name": "index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1708, - "src": "3725:5:11", + "referencedDeclaration": 2726, + "src": "3190:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17301,9 +17360,9 @@ "typeString": "uint256" } }, - "id": 1761, + "id": 2779, "nodeType": "ExpressionStatement", - "src": "3725:7:11" + "src": "3190:7:13" } ] } @@ -17315,18 +17374,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1729, + "id": 2747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1726, + "id": 2744, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1723, - "src": "3401:1:11", + "referencedDeclaration": 2741, + "src": "2866:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17336,51 +17395,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 1727, + "id": 2745, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1702, - "src": "3405:4:11", + "referencedDeclaration": 2720, + "src": "2870:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1728, + "id": 2746, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "3405:11:11", + "src": "2870:11:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3401:15:11", + "src": "2866:15:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1765, + "id": 2783, "initializationExpression": { "assignments": [ - 1723 + 2741 ], "declarations": [ { "constant": false, - "id": 1723, + "id": 2741, "mutability": "mutable", "name": "i", - "nameLocation": "3394:1:11", + "nameLocation": "2859:1:13", "nodeType": "VariableDeclaration", - "scope": 1765, - "src": "3386:9:11", + "scope": 2783, + "src": "2851:9:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17388,10 +17447,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1722, + "id": 2740, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3386:7:11", + "src": "2851:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17400,17 +17459,17 @@ "visibility": "internal" } ], - "id": 1725, + "id": 2743, "initialValue": { "hexValue": "30", - "id": 1724, + "id": 2742, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3398:1:11", + "src": "2863:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -17418,11 +17477,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "3386:13:11" + "src": "2851:13:13" }, "loopExpression": { "expression": { - "id": 1731, + "id": 2749, "isConstant": false, "isLValue": false, "isPure": false, @@ -17430,14 +17489,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "3418:3:11", + "src": "2883:3:13", "subExpression": { - "id": 1730, + "id": 2748, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1723, - "src": "3418:1:11", + "referencedDeclaration": 2741, + "src": "2883:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17448,27 +17507,27 @@ "typeString": "uint256" } }, - "id": 1732, + "id": 2750, "nodeType": "ExpressionStatement", - "src": "3418:3:11" + "src": "2883:3:13" }, "nodeType": "ForStatement", - "src": "3381:366:11" + "src": "2846:366:13" }, { "assignments": [ - 1770 + 2788 ], "declarations": [ { "constant": false, - "id": 1770, + "id": 2788, "mutability": "mutable", "name": "_nftIds", - "nameLocation": "3769:7:11", + "nameLocation": "3234:7:13", "nodeType": "VariableDeclaration", - "scope": 1787, - "src": "3752:24:11", + "scope": 2805, + "src": "3217:24:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -17477,18 +17536,18 @@ }, "typeName": { "baseType": { - "id": 1768, + "id": 2786, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3752:7:11", + "src": "3217:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1769, + "id": 2787, "nodeType": "ArrayTypeName", - "src": "3752:9:11", + "src": "3217:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -17497,28 +17556,28 @@ "visibility": "internal" } ], - "id": 1776, + "id": 2794, "initialValue": { "arguments": [ { - "id": 1773, + "id": 2791, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1677, - "src": "3793:5:11", + "referencedDeclaration": 2703, + "src": "3258:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1774, + "id": 2792, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1679, - "src": "3800:5:11", + "referencedDeclaration": 2694, + "src": "3265:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17537,32 +17596,32 @@ } ], "expression": { - "id": 1771, + "id": 2789, "name": "nft", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1574, - "src": "3779:3:11", + "referencedDeclaration": 2592, + "src": "3244:3:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } }, - "id": 1772, + "id": 2790, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "batchMint", "nodeType": "MemberAccess", - "referencedDeclaration": 1529, - "src": "3779:13:11", + "referencedDeclaration": 2547, + "src": "3244:13:13", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function (address,uint256) external returns (uint256[] memory)" } }, - "id": 1775, + "id": 2793, "isConstant": false, "isLValue": false, "isPure": false, @@ -17570,7 +17629,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3779:27:11", + "src": "3244:27:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", @@ -17578,18 +17637,18 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "3752:54:11" + "src": "3217:54:13" }, { "eventCall": { "arguments": [ { - "id": 1778, + "id": 2796, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1677, - "src": "3880:5:11", + "referencedDeclaration": 2703, + "src": "3345:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17598,14 +17657,14 @@ { "arguments": [ { - "id": 1781, + "id": 2799, "name": "nft", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1574, - "src": "3895:3:11", + "referencedDeclaration": 2592, + "src": "3360:3:13", "typeDescriptions": { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } } @@ -17613,30 +17672,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_IBEERC721_$1551", + "typeIdentifier": "t_contract$_IBEERC721_$2569", "typeString": "contract IBEERC721" } ], - "id": 1780, + "id": 2798, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "3887:7:11", + "src": "3352:7:13", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 1779, + "id": 2797, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3887:7:11", + "src": "3352:7:13", "typeDescriptions": {} } }, - "id": 1782, + "id": 2800, "isConstant": false, "isLValue": false, "isPure": false, @@ -17644,7 +17703,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3887:12:11", + "src": "3352:12:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -17652,24 +17711,24 @@ } }, { - "id": 1783, + "id": 2801, "name": "nftSource", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1715, - "src": "3901:9:11", + "referencedDeclaration": 2733, + "src": "3366:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, { - "id": 1784, + "id": 2802, "name": "_nftIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1770, - "src": "3912:7:11", + "referencedDeclaration": 2788, + "src": "3377:7:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" @@ -17695,18 +17754,18 @@ "typeString": "uint256[] memory" } ], - "id": 1777, + "id": 2795, "name": "Minted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1589, - "src": "3873:6:11", + "referencedDeclaration": 2607, + "src": "3338:6:13", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", "typeString": "function (address,address,uint256[] memory,uint256[] memory)" } }, - "id": 1785, + "id": 2803, "isConstant": false, "isLValue": false, "isPure": false, @@ -17714,88 +17773,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3873:47:11", + "src": "3338:47:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1786, + "id": 2804, "nodeType": "EmitStatement", - "src": "3868:52:11" + "src": "3333:52:13" } ] }, - "documentation": { - "id": 1675, - "nodeType": "StructuredDocumentation", - "src": "2341:537:11", - "text": " @dev The mintToUser function mints NFTs to a given user.\n Only functions called by an address with the MANAGE_ROLE permission can access this function.\n The function takes an array of nftIds and checks that there are enough mintable NFTs for the user.\n It then loops through the user's owned NFTs, checking if each is mintable, and if so, adds it to a list to be minted.\n Then it emits the Minted event with details of the operation.\n @param _user - The address of the user receiving the NFTs" - }, - "functionSelector": "9533a384", - "id": 1788, + "functionSelector": "0d730acc", + "id": 2806, "implemented": true, "kind": "function", - "modifiers": [ - { - "id": 1682, - "kind": "modifierInvocation", - "modifierName": { - "id": 1681, - "name": "onlyManager", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1651, - "src": "2940:11:11" - }, - "nodeType": "ModifierInvocation", - "src": "2940:11:11" - } - ], - "name": "mintToUser", - "nameLocation": "2890:10:11", + "modifiers": [], + "name": "mintNft", + "nameLocation": "2351:7:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 1680, + "id": 2695, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1677, - "mutability": "mutable", - "name": "_user", - "nameLocation": "2909:5:11", - "nodeType": "VariableDeclaration", - "scope": 1788, - "src": "2901:13:11", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1676, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2901:7:11", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1679, + "id": 2694, "mutability": "mutable", "name": "count", - "nameLocation": "2924:5:11", + "nameLocation": "2367:5:13", "nodeType": "VariableDeclaration", - "scope": 1788, - "src": "2916:13:11", + "scope": 2806, + "src": "2359:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17803,10 +17814,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1678, + "id": 2693, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2916:7:11", + "src": "2359:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17815,56 +17826,56 @@ "visibility": "internal" } ], - "src": "2900:30:11" + "src": "2358:15:13" }, "returnParameters": { - "id": 1683, + "id": 2696, "nodeType": "ParameterList", "parameters": [], - "src": "2952:0:11" + "src": "2383:0:13" }, - "scope": 1946, - "src": "2881:1044:11", + "scope": 2964, + "src": "2342:1048:13", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 1821, + "id": 2839, "nodeType": "Block", - "src": "4708:221:11", + "src": "4173:221:13", "statements": [ { "body": { - "id": 1819, + "id": 2837, "nodeType": "Block", - "src": "4800:125:11", + "src": "4265:125:13", "statements": [ { "expression": { "arguments": [ { "baseExpression": { - "id": 1814, + "id": 2832, "name": "_nftIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1794, - "src": "4907:7:11", + "referencedDeclaration": 2812, + "src": "4372:7:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, - "id": 1816, + "id": 2834, "indexExpression": { - "id": 1815, + "id": 2833, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1800, - "src": "4915:1:11", + "referencedDeclaration": 2818, + "src": "4380:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17875,7 +17886,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4907:10:11", + "src": "4372:10:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17891,25 +17902,25 @@ ], "expression": { "baseExpression": { - "id": 1810, + "id": 2828, "name": "ownerToNFTs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "4883:11:11", + "referencedDeclaration": 2585, + "src": "4348:11:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(address => uint256[] storage ref)" } }, - "id": 1812, + "id": 2830, "indexExpression": { - "id": 1811, + "id": 2829, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1791, - "src": "4895:5:11", + "referencedDeclaration": 2809, + "src": "4360:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17920,26 +17931,26 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4883:18:11", + "src": "4348:18:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, - "id": 1813, + "id": 2831, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "push", "nodeType": "MemberAccess", - "src": "4883:23:11", + "src": "4348:23:13", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_array$_t_uint256_$dyn_storage_ptr_$", "typeString": "function (uint256[] storage pointer,uint256)" } }, - "id": 1817, + "id": 2835, "isConstant": false, "isLValue": false, "isPure": false, @@ -17947,16 +17958,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4883:35:11", + "src": "4348:35:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1818, + "id": 2836, "nodeType": "ExpressionStatement", - "src": "4883:35:11" + "src": "4348:35:13" } ] }, @@ -17965,18 +17976,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1806, + "id": 2824, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1803, + "id": 2821, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1800, - "src": "4775:1:11", + "referencedDeclaration": 2818, + "src": "4240:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17986,51 +17997,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 1804, + "id": 2822, "name": "_nftIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1794, - "src": "4779:7:11", + "referencedDeclaration": 2812, + "src": "4244:7:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr", "typeString": "uint256[] calldata" } }, - "id": 1805, + "id": 2823, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "4779:14:11", + "src": "4244:14:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4775:18:11", + "src": "4240:18:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1820, + "id": 2838, "initializationExpression": { "assignments": [ - 1800 + 2818 ], "declarations": [ { "constant": false, - "id": 1800, + "id": 2818, "mutability": "mutable", "name": "i", - "nameLocation": "4768:1:11", + "nameLocation": "4233:1:13", "nodeType": "VariableDeclaration", - "scope": 1820, - "src": "4760:9:11", + "scope": 2838, + "src": "4225:9:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18038,10 +18049,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1799, + "id": 2817, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4760:7:11", + "src": "4225:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18050,17 +18061,17 @@ "visibility": "internal" } ], - "id": 1802, + "id": 2820, "initialValue": { "hexValue": "30", - "id": 1801, + "id": 2819, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4772:1:11", + "src": "4237:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18068,11 +18079,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "4760:13:11" + "src": "4225:13:13" }, "loopExpression": { "expression": { - "id": 1808, + "id": 2826, "isConstant": false, "isLValue": false, "isPure": false, @@ -18080,14 +18091,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "4795:3:11", + "src": "4260:3:13", "subExpression": { - "id": 1807, + "id": 2825, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1800, - "src": "4795:1:11", + "referencedDeclaration": 2818, + "src": "4260:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18098,56 +18109,56 @@ "typeString": "uint256" } }, - "id": 1809, + "id": 2827, "nodeType": "ExpressionStatement", - "src": "4795:3:11" + "src": "4260:3:13" }, "nodeType": "ForStatement", - "src": "4755:170:11" + "src": "4220:170:13" } ] }, "documentation": { - "id": 1789, + "id": 2807, "nodeType": "StructuredDocumentation", - "src": "3929:680:11", + "src": "3394:680:13", "text": " @dev The addNFTData function adds an array of NFT IDs to the list of NFT IDs owned by a user.\n mintToUser method would check if target user had permission to mint NFTs.\n Only functions called by an address with the MANAGE_ROLE permission can access this function.\n The function takes in the address of the user and an array of NFT IDs. It then loops through the array\n of NFT IDs, and adds each one to the end of the array of NFTs owned by that user to update their ownership data.\n @param _user - The address of the user being updated with new NFT data\n @param _nftIds - An array of NFT IDs being added to the user's NFT data" }, "functionSelector": "84be00e4", - "id": 1822, + "id": 2840, "implemented": true, "kind": "function", "modifiers": [ { - "id": 1797, + "id": 2815, "kind": "modifierInvocation", "modifierName": { - "id": 1796, + "id": 2814, "name": "onlyManager", "nodeType": "IdentifierPath", - "referencedDeclaration": 1651, - "src": "4696:11:11" + "referencedDeclaration": 2669, + "src": "4161:11:13" }, "nodeType": "ModifierInvocation", - "src": "4696:11:11" + "src": "4161:11:13" } ], "name": "addNFTData", - "nameLocation": "4621:10:11", + "nameLocation": "4086:10:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 1795, + "id": 2813, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1791, + "id": 2809, "mutability": "mutable", "name": "_user", - "nameLocation": "4645:5:11", + "nameLocation": "4110:5:13", "nodeType": "VariableDeclaration", - "scope": 1822, - "src": "4637:13:11", + "scope": 2840, + "src": "4102:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18155,10 +18166,10 @@ "typeString": "address" }, "typeName": { - "id": 1790, + "id": 2808, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4637:7:11", + "src": "4102:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -18169,13 +18180,13 @@ }, { "constant": false, - "id": 1794, + "id": 2812, "mutability": "mutable", "name": "_nftIds", - "nameLocation": "4675:7:11", + "nameLocation": "4140:7:13", "nodeType": "VariableDeclaration", - "scope": 1822, - "src": "4656:26:11", + "scope": 2840, + "src": "4121:26:13", "stateVariable": false, "storageLocation": "calldata", "typeDescriptions": { @@ -18184,18 +18195,18 @@ }, "typeName": { "baseType": { - "id": 1792, + "id": 2810, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4656:7:11", + "src": "4121:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1793, + "id": 2811, "nodeType": "ArrayTypeName", - "src": "4656:9:11", + "src": "4121:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -18204,40 +18215,40 @@ "visibility": "internal" } ], - "src": "4631:55:11" + "src": "4096:55:13" }, "returnParameters": { - "id": 1798, + "id": 2816, "nodeType": "ParameterList", "parameters": [], - "src": "4708:0:11" + "src": "4173:0:13" }, - "scope": 1946, - "src": "4612:317:11", + "scope": 2964, + "src": "4077:317:13", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 1873, + "id": 2891, "nodeType": "Block", - "src": "5568:578:11", + "src": "5033:578:13", "statements": [ { "assignments": [ - 1834 + 2852 ], "declarations": [ { "constant": false, - "id": 1834, + "id": 2852, "mutability": "mutable", "name": "nfts", - "nameLocation": "5644:4:11", + "nameLocation": "5109:4:13", "nodeType": "VariableDeclaration", - "scope": 1873, - "src": "5627:21:11", + "scope": 2891, + "src": "5092:21:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18246,18 +18257,18 @@ }, "typeName": { "baseType": { - "id": 1832, + "id": 2850, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5627:7:11", + "src": "5092:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1833, + "id": 2851, "nodeType": "ArrayTypeName", - "src": "5627:9:11", + "src": "5092:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -18266,28 +18277,28 @@ "visibility": "internal" } ], - "id": 1838, + "id": 2856, "initialValue": { "baseExpression": { - "id": 1835, + "id": 2853, "name": "ownerToNFTs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "5651:11:11", + "referencedDeclaration": 2585, + "src": "5116:11:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(address => uint256[] storage ref)" } }, - "id": 1837, + "id": 2855, "indexExpression": { - "id": 1836, + "id": 2854, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1825, - "src": "5663:5:11", + "referencedDeclaration": 2843, + "src": "5128:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18298,29 +18309,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5651:18:11", + "src": "5116:18:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5627:42:11" + "src": "5092:42:13" }, { "assignments": [ - 1840 + 2858 ], "declarations": [ { "constant": false, - "id": 1840, + "id": 2858, "mutability": "mutable", "name": "count", - "nameLocation": "5715:5:11", + "nameLocation": "5180:5:13", "nodeType": "VariableDeclaration", - "scope": 1873, - "src": "5707:13:11", + "scope": 2891, + "src": "5172:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18328,10 +18339,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1839, + "id": 2857, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5707:7:11", + "src": "5172:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18340,17 +18351,17 @@ "visibility": "internal" } ], - "id": 1842, + "id": 2860, "initialValue": { "hexValue": "30", - "id": 1841, + "id": 2859, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5723:1:11", + "src": "5188:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18358,28 +18369,28 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "5707:17:11" + "src": "5172:17:13" }, { "body": { - "id": 1869, + "id": 2887, "nodeType": "Block", - "src": "5813:272:11", + "src": "5278:272:13", "statements": [ { "assignments": [ - 1855 + 2873 ], "declarations": [ { "constant": false, - "id": 1855, + "id": 2873, "mutability": "mutable", "name": "nftAId", - "nameLocation": "5879:6:11", + "nameLocation": "5344:6:13", "nodeType": "VariableDeclaration", - "scope": 1869, - "src": "5871:14:11", + "scope": 2887, + "src": "5336:14:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18387,10 +18398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1854, + "id": 2872, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5871:7:11", + "src": "5336:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18399,28 +18410,28 @@ "visibility": "internal" } ], - "id": 1859, + "id": 2877, "initialValue": { "baseExpression": { - "id": 1856, + "id": 2874, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1834, - "src": "5888:4:11", + "referencedDeclaration": 2852, + "src": "5353:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1858, + "id": 2876, "indexExpression": { - "id": 1857, + "id": 2875, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1844, - "src": "5893:1:11", + "referencedDeclaration": 2862, + "src": "5358:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18431,18 +18442,18 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5888:7:11", + "src": "5353:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5871:24:11" + "src": "5336:24:13" }, { "condition": { - "id": 1863, + "id": 2881, "isConstant": false, "isLValue": false, "isPure": false, @@ -18450,28 +18461,28 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "5957:18:11", + "src": "5422:18:13", "subExpression": { "baseExpression": { - "id": 1860, + "id": 2878, "name": "nftMinted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "5958:9:11", + "referencedDeclaration": 2589, + "src": "5423:9:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" } }, - "id": 1862, + "id": 2880, "indexExpression": { - "id": 1861, + "id": 2879, "name": "nftAId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1855, - "src": "5968:6:11", + "referencedDeclaration": 2873, + "src": "5433:6:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18482,7 +18493,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5958:17:11", + "src": "5423:17:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18493,17 +18504,17 @@ "typeString": "bool" } }, - "id": 1868, + "id": 2886, "nodeType": "IfStatement", - "src": "5953:126:11", + "src": "5418:126:13", "trueBody": { - "id": 1867, + "id": 2885, "nodeType": "Block", - "src": "5977:102:11", + "src": "5442:102:13", "statements": [ { "expression": { - "id": 1865, + "id": 2883, "isConstant": false, "isLValue": false, "isPure": false, @@ -18511,14 +18522,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "6063:7:11", + "src": "5528:7:13", "subExpression": { - "id": 1864, + "id": 2882, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, - "src": "6063:5:11", + "referencedDeclaration": 2858, + "src": "5528:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18529,9 +18540,9 @@ "typeString": "uint256" } }, - "id": 1866, + "id": 2884, "nodeType": "ExpressionStatement", - "src": "6063:7:11" + "src": "5528:7:13" } ] } @@ -18543,18 +18554,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1850, + "id": 2868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1847, + "id": 2865, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1844, - "src": "5791:1:11", + "referencedDeclaration": 2862, + "src": "5256:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18564,51 +18575,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 1848, + "id": 2866, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1834, - "src": "5795:4:11", + "referencedDeclaration": 2852, + "src": "5260:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1849, + "id": 2867, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "5795:11:11", + "src": "5260:11:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5791:15:11", + "src": "5256:15:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1870, + "id": 2888, "initializationExpression": { "assignments": [ - 1844 + 2862 ], "declarations": [ { "constant": false, - "id": 1844, + "id": 2862, "mutability": "mutable", "name": "i", - "nameLocation": "5784:1:11", + "nameLocation": "5249:1:13", "nodeType": "VariableDeclaration", - "scope": 1870, - "src": "5776:9:11", + "scope": 2888, + "src": "5241:9:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18616,10 +18627,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1843, + "id": 2861, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5776:7:11", + "src": "5241:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18628,17 +18639,17 @@ "visibility": "internal" } ], - "id": 1846, + "id": 2864, "initialValue": { "hexValue": "30", - "id": 1845, + "id": 2863, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5788:1:11", + "src": "5253:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -18646,11 +18657,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "5776:13:11" + "src": "5241:13:13" }, "loopExpression": { "expression": { - "id": 1852, + "id": 2870, "isConstant": false, "isLValue": false, "isPure": false, @@ -18658,14 +18669,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "5808:3:11", + "src": "5273:3:13", "subExpression": { - "id": 1851, + "id": 2869, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1844, - "src": "5808:1:11", + "referencedDeclaration": 2862, + "src": "5273:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18676,60 +18687,60 @@ "typeString": "uint256" } }, - "id": 1853, + "id": 2871, "nodeType": "ExpressionStatement", - "src": "5808:3:11" + "src": "5273:3:13" }, "nodeType": "ForStatement", - "src": "5771:314:11" + "src": "5236:314:13" }, { "expression": { - "id": 1871, + "id": 2889, "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1840, - "src": "6136:5:11", + "referencedDeclaration": 2858, + "src": "5601:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1829, - "id": 1872, + "functionReturnParameters": 2847, + "id": 2890, "nodeType": "Return", - "src": "6129:12:11" + "src": "5594:12:13" } ] }, "documentation": { - "id": 1823, + "id": 2841, "nodeType": "StructuredDocumentation", - "src": "4933:561:11", + "src": "4398:561:13", "text": " @dev The getMintableCount function gets the number of NFTs owned by a user that have not yet been minted.\n This is a read-only function, meaning it doesn't modify the state of the blockchain.\n It takes in the address of the user whose mintable count is being determined,\n and returns the number of NFTs owned by the user that have not yet been minted.\n @param _user - The address of the user whose mintable count is being determined\n @return count - The number of NFTs owned by the user that have not yet been minted" }, "functionSelector": "0431f205", - "id": 1874, + "id": 2892, "implemented": true, "kind": "function", "modifiers": [], "name": "getMintableCount", - "nameLocation": "5506:16:11", + "nameLocation": "4971:16:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 1826, + "id": 2844, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1825, + "id": 2843, "mutability": "mutable", "name": "_user", - "nameLocation": "5531:5:11", + "nameLocation": "4996:5:13", "nodeType": "VariableDeclaration", - "scope": 1874, - "src": "5523:13:11", + "scope": 2892, + "src": "4988:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18737,10 +18748,10 @@ "typeString": "address" }, "typeName": { - "id": 1824, + "id": 2842, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5523:7:11", + "src": "4988:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -18750,21 +18761,21 @@ "visibility": "internal" } ], - "src": "5522:15:11" + "src": "4987:15:13" }, "returnParameters": { - "id": 1829, + "id": 2847, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1828, + "id": 2846, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1874, - "src": "5559:7:11", + "scope": 2892, + "src": "5024:7:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18772,10 +18783,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1827, + "id": 2845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5559:7:11", + "src": "5024:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18784,34 +18795,34 @@ "visibility": "internal" } ], - "src": "5558:9:11" + "src": "5023:9:13" }, - "scope": 1946, - "src": "5497:649:11", + "scope": 2964, + "src": "4962:649:13", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 1944, + "id": 2962, "nodeType": "Block", - "src": "6832:850:11", + "src": "6297:850:13", "statements": [ { "assignments": [ - 1887 + 2905 ], "declarations": [ { "constant": false, - "id": 1887, + "id": 2905, "mutability": "mutable", "name": "nfts", - "nameLocation": "6908:4:11", + "nameLocation": "6373:4:13", "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "6891:21:11", + "scope": 2962, + "src": "6356:21:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18820,18 +18831,18 @@ }, "typeName": { "baseType": { - "id": 1885, + "id": 2903, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6891:7:11", + "src": "6356:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1886, + "id": 2904, "nodeType": "ArrayTypeName", - "src": "6891:9:11", + "src": "6356:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -18840,28 +18851,28 @@ "visibility": "internal" } ], - "id": 1891, + "id": 2909, "initialValue": { "baseExpression": { - "id": 1888, + "id": 2906, "name": "ownerToNFTs", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "6915:11:11", + "referencedDeclaration": 2585, + "src": "6380:11:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$", "typeString": "mapping(address => uint256[] storage ref)" } }, - "id": 1890, + "id": 2908, "indexExpression": { - "id": 1889, + "id": 2907, "name": "_user", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1877, - "src": "6927:5:11", + "referencedDeclaration": 2895, + "src": "6392:5:13", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18872,29 +18883,29 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6915:18:11", + "src": "6380:18:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6891:42:11" + "src": "6356:42:13" }, { "assignments": [ - 1896 + 2914 ], "declarations": [ { "constant": false, - "id": 1896, + "id": 2914, "mutability": "mutable", "name": "mintableNftIds", - "nameLocation": "7053:14:11", + "nameLocation": "6518:14:13", "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "7036:31:11", + "scope": 2962, + "src": "6501:31:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -18903,18 +18914,18 @@ }, "typeName": { "baseType": { - "id": 1894, + "id": 2912, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7036:7:11", + "src": "6501:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1895, + "id": 2913, "nodeType": "ArrayTypeName", - "src": "7036:9:11", + "src": "6501:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -18923,30 +18934,30 @@ "visibility": "internal" } ], - "id": 1903, + "id": 2921, "initialValue": { "arguments": [ { "expression": { - "id": 1900, + "id": 2918, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1887, - "src": "7084:4:11", + "referencedDeclaration": 2905, + "src": "6549:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1901, + "id": 2919, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7084:11:11", + "src": "6549:11:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18960,38 +18971,38 @@ "typeString": "uint256" } ], - "id": 1899, + "id": 2917, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", - "src": "7070:13:11", + "src": "6535:13:13", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "function (uint256) pure returns (uint256[] memory)" }, "typeName": { "baseType": { - "id": 1897, + "id": 2915, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7074:7:11", + "src": "6539:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1898, + "id": 2916, "nodeType": "ArrayTypeName", - "src": "7074:9:11", + "src": "6539:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } } }, - "id": 1902, + "id": 2920, "isConstant": false, "isLValue": false, "isPure": false, @@ -18999,7 +19010,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7070:26:11", + "src": "6535:26:13", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", @@ -19007,22 +19018,22 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "7036:60:11" + "src": "6501:60:13" }, { "assignments": [ - 1905 + 2923 ], "declarations": [ { "constant": false, - "id": 1905, + "id": 2923, "mutability": "mutable", "name": "index", - "nameLocation": "7153:5:11", + "nameLocation": "6618:5:13", "nodeType": "VariableDeclaration", - "scope": 1944, - "src": "7145:13:11", + "scope": 2962, + "src": "6610:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19030,10 +19041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1904, + "id": 2922, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7145:7:11", + "src": "6610:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19042,17 +19053,17 @@ "visibility": "internal" } ], - "id": 1907, + "id": 2925, "initialValue": { "hexValue": "30", - "id": 1906, + "id": 2924, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7161:1:11", + "src": "6626:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19060,28 +19071,28 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "7145:17:11" + "src": "6610:17:13" }, { "body": { - "id": 1940, + "id": 2958, "nodeType": "Block", - "src": "7251:356:11", + "src": "6716:356:13", "statements": [ { "assignments": [ - 1920 + 2938 ], "declarations": [ { "constant": false, - "id": 1920, + "id": 2938, "mutability": "mutable", "name": "nftId", - "nameLocation": "7317:5:11", + "nameLocation": "6782:5:13", "nodeType": "VariableDeclaration", - "scope": 1940, - "src": "7309:13:11", + "scope": 2958, + "src": "6774:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19089,10 +19100,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1919, + "id": 2937, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7309:7:11", + "src": "6774:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19101,28 +19112,28 @@ "visibility": "internal" } ], - "id": 1924, + "id": 2942, "initialValue": { "baseExpression": { - "id": 1921, + "id": 2939, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1887, - "src": "7325:4:11", + "referencedDeclaration": 2905, + "src": "6790:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1923, + "id": 2941, "indexExpression": { - "id": 1922, + "id": 2940, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "7330:1:11", + "referencedDeclaration": 2927, + "src": "6795:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19133,18 +19144,18 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7325:7:11", + "src": "6790:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7309:23:11" + "src": "6774:23:13" }, { "condition": { - "id": 1928, + "id": 2946, "isConstant": false, "isLValue": false, "isPure": false, @@ -19152,28 +19163,28 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "7394:17:11", + "src": "6859:17:13", "subExpression": { "baseExpression": { - "id": 1925, + "id": 2943, "name": "nftMinted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "7395:9:11", + "referencedDeclaration": 2589, + "src": "6860:9:13", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_bool_$", "typeString": "mapping(uint256 => bool)" } }, - "id": 1927, + "id": 2945, "indexExpression": { - "id": 1926, + "id": 2944, "name": "nftId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, - "src": "7405:5:11", + "referencedDeclaration": 2938, + "src": "6870:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19184,7 +19195,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7395:16:11", + "src": "6860:16:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19195,42 +19206,42 @@ "typeString": "bool" } }, - "id": 1939, + "id": 2957, "nodeType": "IfStatement", - "src": "7390:211:11", + "src": "6855:211:13", "trueBody": { - "id": 1938, + "id": 2956, "nodeType": "Block", - "src": "7413:188:11", + "src": "6878:188:13", "statements": [ { "expression": { - "id": 1933, + "id": 2951, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { - "id": 1929, + "id": 2947, "name": "mintableNftIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1896, - "src": "7507:14:11", + "referencedDeclaration": 2914, + "src": "6972:14:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1931, + "id": 2949, "indexExpression": { - "id": 1930, + "id": 2948, "name": "index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "7522:5:11", + "referencedDeclaration": 2923, + "src": "6987:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19241,7 +19252,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7507:21:11", + "src": "6972:21:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19250,30 +19261,30 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 1932, + "id": 2950, "name": "nftId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, - "src": "7531:5:11", + "referencedDeclaration": 2938, + "src": "6996:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7507:29:11", + "src": "6972:29:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1934, + "id": 2952, "nodeType": "ExpressionStatement", - "src": "7507:29:11" + "src": "6972:29:13" }, { "expression": { - "id": 1936, + "id": 2954, "isConstant": false, "isLValue": false, "isPure": false, @@ -19281,14 +19292,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "7585:7:11", + "src": "7050:7:13", "subExpression": { - "id": 1935, + "id": 2953, "name": "index", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1905, - "src": "7585:5:11", + "referencedDeclaration": 2923, + "src": "7050:5:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19299,9 +19310,9 @@ "typeString": "uint256" } }, - "id": 1937, + "id": 2955, "nodeType": "ExpressionStatement", - "src": "7585:7:11" + "src": "7050:7:13" } ] } @@ -19313,18 +19324,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1915, + "id": 2933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 1912, + "id": 2930, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "7229:1:11", + "referencedDeclaration": 2927, + "src": "6694:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19334,51 +19345,51 @@ "operator": "<", "rightExpression": { "expression": { - "id": 1913, + "id": 2931, "name": "nfts", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1887, - "src": "7233:4:11", + "referencedDeclaration": 2905, + "src": "6698:4:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "id": 1914, + "id": 2932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "length", "nodeType": "MemberAccess", - "src": "7233:11:11", + "src": "6698:11:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7229:15:11", + "src": "6694:15:13", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1941, + "id": 2959, "initializationExpression": { "assignments": [ - 1909 + 2927 ], "declarations": [ { "constant": false, - "id": 1909, + "id": 2927, "mutability": "mutable", "name": "i", - "nameLocation": "7222:1:11", + "nameLocation": "6687:1:13", "nodeType": "VariableDeclaration", - "scope": 1941, - "src": "7214:9:11", + "scope": 2959, + "src": "6679:9:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19386,10 +19397,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1908, + "id": 2926, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7214:7:11", + "src": "6679:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19398,17 +19409,17 @@ "visibility": "internal" } ], - "id": 1911, + "id": 2929, "initialValue": { "hexValue": "30", - "id": 1910, + "id": 2928, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7226:1:11", + "src": "6691:1:13", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -19416,11 +19427,11 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "7214:13:11" + "src": "6679:13:13" }, "loopExpression": { "expression": { - "id": 1917, + "id": 2935, "isConstant": false, "isLValue": false, "isPure": false, @@ -19428,14 +19439,14 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "7246:3:11", + "src": "6711:3:13", "subExpression": { - "id": 1916, + "id": 2934, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1909, - "src": "7246:1:11", + "referencedDeclaration": 2927, + "src": "6711:1:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19446,60 +19457,60 @@ "typeString": "uint256" } }, - "id": 1918, + "id": 2936, "nodeType": "ExpressionStatement", - "src": "7246:3:11" + "src": "6711:3:13" }, "nodeType": "ForStatement", - "src": "7209:398:11" + "src": "6674:398:13" }, { "expression": { - "id": 1942, + "id": 2960, "name": "mintableNftIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1896, - "src": "7663:14:11", + "referencedDeclaration": 2914, + "src": "7128:14:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, - "functionReturnParameters": 1882, - "id": 1943, + "functionReturnParameters": 2900, + "id": 2961, "nodeType": "Return", - "src": "7656:21:11" + "src": "7121:21:13" } ] }, "documentation": { - "id": 1875, + "id": 2893, "nodeType": "StructuredDocumentation", - "src": "6150:588:11", + "src": "5615:588:13", "text": " @dev The getMintableNftIds function gets an array of NFT IDs owned by a user that have not yet been minted.\n This is a read-only function, meaning it doesn't modify the state of the blockchain.\n It takes in the address of the user whose mintable NFT IDs are being determined,\n and returns an array of the NFT IDs owned by the user that have not yet been minted.\n @param _user - The address of the user whose mintable NFT IDs are being determined\n @return mintableNftIds - An array of the NFT IDs owned by the user that have not yet been minted" }, "functionSelector": "032221ad", - "id": 1945, + "id": 2963, "implemented": true, "kind": "function", "modifiers": [], "name": "getMintableNftIds", - "nameLocation": "6750:17:11", + "nameLocation": "6215:17:13", "nodeType": "FunctionDefinition", "parameters": { - "id": 1878, + "id": 2896, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1877, + "id": 2895, "mutability": "mutable", "name": "_user", - "nameLocation": "6781:5:11", + "nameLocation": "6246:5:13", "nodeType": "VariableDeclaration", - "scope": 1945, - "src": "6773:13:11", + "scope": 2963, + "src": "6238:13:13", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19507,10 +19518,10 @@ "typeString": "address" }, "typeName": { - "id": 1876, + "id": 2894, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6773:7:11", + "src": "6238:7:13", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -19520,21 +19531,21 @@ "visibility": "internal" } ], - "src": "6767:23:11" + "src": "6232:23:13" }, "returnParameters": { - "id": 1882, + "id": 2900, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1881, + "id": 2899, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1945, - "src": "6814:16:11", + "scope": 2963, + "src": "6279:16:13", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -19543,18 +19554,18 @@ }, "typeName": { "baseType": { - "id": 1879, + "id": 2897, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6814:7:11", + "src": "6279:7:13", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1880, + "id": 2898, "nodeType": "ArrayTypeName", - "src": "6814:9:11", + "src": "6279:9:13", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" @@ -19563,21 +19574,21 @@ "visibility": "internal" } ], - "src": "6813:18:11" + "src": "6278:18:13" }, - "scope": 1946, - "src": "6741:941:11", + "scope": 2964, + "src": "6206:941:13", "stateMutability": "view", "virtual": false, "visibility": "external" } ], - "scope": 1947, - "src": "165:7519:11", + "scope": 2965, + "src": "165:6984:13", "usedErrors": [] } ], - "src": "32:7653:11" + "src": "32:7118:13" }, "compiler": { "name": "solc", @@ -19951,8 +19962,7 @@ } }, "schemaVersion": "3.4.11", - "updatedAt": "2023-05-11T08:01:34.556Z", - "networkType": "ethereum", + "updatedAt": "2023-07-26T11:08:09.072Z", "devdoc": { "kind": "dev", "methods": { @@ -19994,22 +20004,16 @@ "details": "Returns the number of accounts that have `role`. Can be used together with {getRoleMember} to enumerate all bearers of a role." }, "grantRole(bytes32,address)": { - "details": "Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role." + "details": "Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event." }, "hasRole(bytes32,address)": { "details": "Returns `true` if `account` has been granted `role`." }, - "mintToUser(address,uint256)": { - "details": "The mintToUser function mints NFTs to a given user. Only functions called by an address with the MANAGE_ROLE permission can access this function. The function takes an array of nftIds and checks that there are enough mintable NFTs for the user. It then loops through the user's owned NFTs, checking if each is mintable, and if so, adds it to a list to be minted. Then it emits the Minted event with details of the operation.", - "params": { - "_user": "- The address of the user receiving the NFTs" - } - }, "renounceRole(bytes32,address)": { - "details": "Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`." + "details": "Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event." }, "revokeRole(bytes32,address)": { - "details": "Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role." + "details": "Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event." }, "supportsInterface(bytes4)": { "details": "See {IERC165-supportsInterface}." diff --git a/contracts/logic/ExecuteRelay.sol b/contracts/logic/ExecuteRelay.sol index fe69553..3e0b847 100644 --- a/contracts/logic/ExecuteRelay.sol +++ b/contracts/logic/ExecuteRelay.sol @@ -1,7 +1,7 @@ // SPDX-License-Identifier: MIT pragma solidity 0.8.10; -import "../core/HasSignature.sol"; +import "../core/HasSignature712.sol"; import "../utils/TimeChecker.sol"; interface IToken { @@ -20,8 +20,8 @@ interface IToken { ) external; } -contract ExecuteRelay is HasSignature, TimeChecker { - constructor() HasSignature("ExecuteRelay", "1") {} +contract ExecuteRelay is HasSignature712, TimeChecker { + constructor() HasSignature712("ExecuteRelay", "1") {} address public tokenAddress; diff --git a/contracts/market/MarketPlace.sol b/contracts/market/MarketPlace.sol index 99cc48a..e3911c6 100644 --- a/contracts/market/MarketPlace.sol +++ b/contracts/market/MarketPlace.sol @@ -113,7 +113,7 @@ contract MarketPlace is Ownable, HasSignature { values[2] ); - checkSigner712(addresses[0], criteriaMessageHash, signature); + checkSigner(addresses[0], criteriaMessageHash, signature); // check current ownership IERC721 nft = IERC721(addresses[1]); diff --git a/migrations/2_depoly_etc.js b/migrations/2_depoly_etc.js index 0b9a0b9..d8b4e21 100644 --- a/migrations/2_depoly_etc.js +++ b/migrations/2_depoly_etc.js @@ -1,38 +1,38 @@ -const Badge = artifacts.require("tokens/erc721/BEBadge"); -const Coin = artifacts.require("tokens/erc20/BEUSDT"); +// const Badge = artifacts.require("tokens/erc721/BEBadge"); +// const Coin = artifacts.require("tokens/erc20/BEUSDT"); const Wallet = artifacts.require("core/BEMultiSigWallet"); -const Distributor = artifacts.require("logic/NftDistributor"); +// const Distributor = artifacts.require("logic/NftDistributor"); const config = require("../config/config"); const base = require("../scripts/base"); module.exports = async function (deployer, network, accounts) { - await deployer.deploy(Badge, "BE Badge", "Badge", "4000"); - const badgeInstance = await Badge.deployed(); - if (badgeInstance) { - console.log("BEBadge successfully deployed. "); - console.log("address: " + badgeInstance.address); - } - base.updateArray({ - name: "BEBadge", - type: "erc721", - json: "assets/contracts/BEBadge.json", - address: badgeInstance.address, - network, - }); - await badgeInstance.updateBaseURI(config.token.baseTokenURI); - await deployer.deploy(Coin, "BE test USDT", "USDT"); - const coinInstance = await Coin.deployed(); - if (coinInstance) { - console.log("BEUSDT successfully deployed. "); - console.log("address: " + coinInstance.address); - } - base.updateArray({ - name: "BEUSDT", - type: "erc20", - json: "assets/contracts/BEUSDT.json", - address: coinInstance.address, - network, - }); + // await deployer.deploy(Badge, "BE Badge", "Badge", "4000"); + // const badgeInstance = await Badge.deployed(); + // if (badgeInstance) { + // console.log("BEBadge successfully deployed. "); + // console.log("address: " + badgeInstance.address); + // } + // base.updateArray({ + // name: "BEBadge", + // type: "erc721", + // json: "assets/contracts/BEBadge.json", + // address: badgeInstance.address, + // network, + // }); + // await badgeInstance.updateBaseURI(config.token.baseTokenURI); + // await deployer.deploy(Coin, "BE test USDT", "USDT"); + // const coinInstance = await Coin.deployed(); + // if (coinInstance) { + // console.log("BEUSDT successfully deployed. "); + // console.log("address: " + coinInstance.address); + // } + // base.updateArray({ + // name: "BEUSDT", + // type: "erc20", + // json: "assets/contracts/BEUSDT.json", + // address: coinInstance.address, + // network, + // }); await deployer.deploy( Wallet, 60, @@ -53,32 +53,32 @@ module.exports = async function (deployer, network, accounts) { address: walletInstance.address, network, }); - await badgeInstance.setMintRole(walletInstance.address); - console.log("success add wallet to badge's mint role"); - await coinInstance.setMintRole(walletInstance.address); - console.log("success add wallet to usdt's mint role"); + // await badgeInstance.setMintRole(walletInstance.address); + // console.log("success add wallet to badge's mint role"); + // await coinInstance.setMintRole(walletInstance.address); + // console.log("success add wallet to usdt's mint role"); - await deployer.deploy( - Distributor, - badgeInstance.address, - config.admins.executors - ); - const distributorInstance = await Distributor.deployed(); - if (distributorInstance) { - console.log("NftDistributor successfully deployed."); - console.log("address: " + distributorInstance.address); - } - base.updateArray({ - name: "NftDistributor", - type: "logic", - json: "assets/contracts/NftDistributor.json", - address: distributorInstance.address, - network, - }); - await badgeInstance.setMintRole(distributorInstance.address); - await distributorInstance.grantRole( - "0xa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091", - walletInstance.address - ); - console.log("success add distributor to badge's mint role"); + // await deployer.deploy( + // Distributor, + // badgeInstance.address, + // config.admins.executors + // ); + // const distributorInstance = await Distributor.deployed(); + // if (distributorInstance) { + // console.log("NftDistributor successfully deployed."); + // console.log("address: " + distributorInstance.address); + // } + // base.updateArray({ + // name: "NftDistributor", + // type: "logic", + // json: "assets/contracts/NftDistributor.json", + // address: distributorInstance.address, + // network, + // }); + // await badgeInstance.setMintRole(distributorInstance.address); + // await distributorInstance.grantRole( + // "0xa076a07f65bcd51bcb15a0f01a65bc18f2d922acb81bcfd8af4caf5adb557091", + // walletInstance.address + // ); + // console.log("success add distributor to badge's mint role"); }; diff --git a/migrations/5_deploy_nft.js b/migrations/5_deploy_nft.js index c61234b..a734f82 100644 --- a/migrations/5_deploy_nft.js +++ b/migrations/5_deploy_nft.js @@ -2,7 +2,8 @@ const config = require("../config/config"); const base = require("../scripts/base"); module.exports = async function (deployer, network, accounts) { - const tokens = [{ name: "HERO", desc: "CRYPTO ELITE'S HERO", limit: 0 }]; + // const tokens = [{ name: "HERO", desc: "CRYPTO ELITE'S HERO", limit: 0 }]; + const tokens = [{ name: "PLANET", desc: "CF PLANET", limit: 0 }]; for (let i = 0, l = tokens.length; i < l; i++) { const { name, desc, limit } = tokens[i]; let Nft = artifacts.require("tokens/erc721/NFT");