diff --git a/.gitignore b/.gitignore index 375af3a..efa32f0 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ openzeppelin .key .addr .selfaddr -.selfkey \ No newline at end of file +.selfkey +.env \ No newline at end of file diff --git a/abi_code.js b/abi_code.js index 27a9cad..8e3cbc4 100644 --- a/abi_code.js +++ b/abi_code.js @@ -285,12 +285,30 @@ const CODE_ABI = [     stateMutability: "nonpayable",     type: "function",   }, + { + inputs: [ + { + internalType: "address", + name: "to", + type: "address", + }, + { + internalType: "uint256", + name: "tokenId", + type: "uint256", + }, + ], + name: "mint", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, ]; const Web3 = require('web3'); -const w3 = new Web3('https://arbitrum-goerli.publicnode.com'); - +// const w3 = new Web3('https://arbitrum-goerli.publicnode.com'); +const w3 = new Web3('https://okbtestrpc.okbchain.org'); module.exports = { getBalance: async ()=>{ const erc721addr = '0x9e45716bF916FBa3F460DDdDB0254F60e34C9853' @@ -300,5 +318,17 @@ module.exports = { const res = await instance.methods.balanceOf(account).call(); console.log('bananceof:', res) return res + }, + + getPastEvents: async ()=>{ + const erc20addr = '0x27431808bCDbc12EBFDc8A1e3B6b70e3E44E79Af' + const instance = new w3.eth.Contract(CODE_ABI, erc20addr); + + const res = await instance.getPastEvents("allEvents",{ + fromBlock: 5106256, + toBlock: 5107123 + }); + console.log('getPastEvents over.') + return res } } \ No newline at end of file diff --git a/build/contracts/NFTSbt.json b/build/contracts/NFTSbt.json index f2d2ba0..2b8bf6f 100644 --- a/build/contracts/NFTSbt.json +++ b/build/contracts/NFTSbt.json @@ -352,6 +352,19 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "maxBatchSize", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "name": "name", @@ -645,6 +658,30 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "name": "batchMint", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -730,22 +767,30 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_supplyLimt\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BURN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINTER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"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\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"removeBurnRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"removeMintRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"setBurnRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"setMintRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"supplyLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"metaAddress\",\"type\":\"address\"}],\"name\":\"updateMetaAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"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`.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"removeBurnRole(address)\":{\"details\":\"Remove burn role to address\"},\"removeMintRole(address)\":{\"details\":\"Remove mint role to address\"},\"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.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"setBurnRole(address)\":{\"details\":\"Grant burn role to address\"},\"setMintRole(address)\":{\"details\":\"Grant mint role to address\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenByIndex(uint256)\":{\"details\":\"See {IERC721Enumerable-tokenByIndex}.\"},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"See {IERC721Enumerable-tokenOfOwnerByIndex}.\"},\"tokenURI(uint256)\":{\"details\":\"one type badge has same tokenURI\"},\"totalSupply()\":{\"details\":\"See {IERC721Enumerable-totalSupply}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"},\"updateMetaAddress(address)\":{\"details\":\"Set token URI\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/tokens/erc721/NFTSbt.sol\":\"NFTSbt\"},\"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/IAccessControl.sol\":{\"keccak256\":\"0x59ce320a585d7e1f163cd70390a0ef2ff9cec832e2aa544293a00692465a7a57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb2c137c343ef0c4c7ce7b18c1d108afdc9d315a04e48307288d2d05adcbde3a\",\"dweb:/ipfs/QmUxhrAQM3MM3FF5j7AtcXLXguWCJBHJ14BRdVtuoQc8Fh\"]},\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x2c309e7df9e05e6ce15bedfe74f3c61b467fc37e0fae9eab496acf5ea0bbd7ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7063b5c98711a98018ba4635ac74cee1c1cfa2ea01099498e062699ed9530005\",\"dweb:/ipfs/QmeJ8rGXkcv7RrqLdAW8PCXPAykxVsddfYY6g5NaTwmRFE\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol\":{\"keccak256\":\"0xa8796bd16014cefb8c26449413981a49c510f92a98d6828494f5fd046223ced3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63a5e0bb5a7d182e0d0eef87033f78115eab791de3626a929bc98c157087880a\",\"dweb:/ipfs/QmetkXAu2CJKS4qrZtEQPU8okAPwUwa6HL4XYwk8vrYMk8\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol\":{\"keccak256\":\"0xd1556954440b31c97a142c6ba07d5cade45f96fafd52091d33a14ebe365aecbf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26fef835622b46a5ba08b3ef6b46a22e94b5f285d0f0fb66b703bd30217d2c34\",\"dweb:/ipfs/QmZ548qdwfL1qF7aXz3xh1GCdTiST81kGGuKRqVUfYmPZR\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Counters.sol\":{\"keccak256\":\"0xf0018c2440fbe238dd3a8732fa8e17a0f9dce84d31451dc8a32f6d62b349c9f1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e1c62884d55b70f3ae5432b44bb3166ad71ae3acd19c57ab6ddc3c87c325ee\",\"dweb:/ipfs/QmezuXg5GK5oeA4F91EZhozBFekhq5TD966bHPH18cCqhu\"]},\"@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\"]},\"project:/contracts/interfaces/IMetaData.sol\":{\"keccak256\":\"0x30907dd89502219f11e6a2584bdcadecd842115ba17db1a86d3e5a43acdb8662\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e719ea33d0f10b6094da881360bc033248e90d0f6c85d590762c6b8e555e8bb2\",\"dweb:/ipfs/Qmf4MV5wH2fsE4nwheutoMKSZmoGghZrnr5pzgWMgm3Q9D\"]},\"project:/contracts/tokens/erc721/NFTSbt.sol\":{\"keccak256\":\"0x9b5d4731ec60ae9592c747dd04c17d07e47424479fde65253187e5e263e62be3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5ac331599856bdbfc1804f0f9c1e0e582df8ea9deeeb7ce6ba9f8281d35073c0\",\"dweb:/ipfs/QmZFao5icasRNvjsS9HDZMwpfS9yFQgFgGVkR4yLLKymMr\"]}},\"version\":1}", - "bytecode": "0x60a06040523480156200001157600080fd5b506040516200489f3803806200489f8339818101604052810190620000379190620005e4565b82828160019080519060200190620000519291906200035c565b5080600290805190602001906200006a9291906200035c565b5050508060808181525050620000aa7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa226000801b6200016160201b60201c565b620000df7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66000801b6200016160201b60201c565b620000f46000801b33620001c460201b60201c565b620001267f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620001c460201b60201c565b620001587fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2233620001c460201b60201c565b505050620006e3565b60006200017483620001da60201b60201c565b905081600080858152602001908152602001600020600101819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b620001d68282620001f960201b60201c565b5050565b6000806000838152602001908152602001600020600101549050919050565b6200020b8282620002ea60201b60201c565b620002e657600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200028b6200035460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b8280546200036a90620006ad565b90600052602060002090601f0160209004810192826200038e5760008555620003da565b82601f10620003a957805160ff1916838001178555620003da565b82800160010185558215620003da579182015b82811115620003d9578251825591602001919060010190620003bc565b5b509050620003e99190620003ed565b5090565b5b8082111562000408576000816000905550600101620003ee565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000475826200042a565b810181811067ffffffffffffffff821117156200049757620004966200043b565b5b80604052505050565b6000620004ac6200040c565b9050620004ba82826200046a565b919050565b600067ffffffffffffffff821115620004dd57620004dc6200043b565b5b620004e8826200042a565b9050602081019050919050565b60005b8381101562000515578082015181840152602081019050620004f8565b8381111562000525576000848401525b50505050565b6000620005426200053c84620004bf565b620004a0565b90508281526020810184848401111562000561576200056062000425565b5b6200056e848285620004f5565b509392505050565b600082601f8301126200058e576200058d62000420565b5b8151620005a08482602086016200052b565b91505092915050565b6000819050919050565b620005be81620005a9565b8114620005ca57600080fd5b50565b600081519050620005de81620005b3565b92915050565b6000806000606084860312156200060057620005ff62000416565b5b600084015167ffffffffffffffff8111156200062157620006206200041b565b5b6200062f8682870162000576565b935050602084015167ffffffffffffffff8111156200065357620006526200041b565b5b620006618682870162000576565b92505060406200067486828701620005cd565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620006c657607f821691505b60208210811415620006dd57620006dc6200067e565b5b50919050565b6080516141926200070d6000396000818161087001528181610d200152610d4701526141926000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c8063530dd0791161010f578063a22cb465116100a2578063c87b56dd11610071578063c87b56dd146105c5578063d5391393146105f5578063d547741f14610613578063e985e9c51461062f576101f0565b8063a22cb46514610553578063b6a6a93d1461056f578063b88d4fde1461058b578063b930908f146105a7576101f0565b806391d14854116100de57806391d14854146104cb57806395d89b41146104fb578063965f4c6014610519578063a217fddf14610535576101f0565b8063530dd0791461041f5780636352211e1461043b5780636a6278421461046b57806370a082311461049b576101f0565b8063248a9ca31161018757806336568abe1161015657806336568abe1461039b57806342842e0e146103b757806342966c68146103d35780634f6ccce7146103ef576101f0565b8063248a9ca3146103035780632f2ff15d146103335780632f745c591461034f578063327ba6151461037f576101f0565b806318160ddd116101c357806318160ddd1461028f57806319d1997a146102ad5780631cf4e3ee146102cb57806323b872dd146102e7576101f0565b806301ffc9a7146101f557806306fdde0314610225578063081812fc14610243578063095ea7b314610273575b600080fd5b61020f600480360381019061020a9190612bba565b61065f565b60405161021c9190612c02565b60405180910390f35b61022d610671565b60405161023a9190612cb6565b60405180910390f35b61025d60048036038101906102589190612d0e565b610703565b60405161026a9190612d7c565b60405180910390f35b61028d60048036038101906102889190612dc3565b610749565b005b610297610861565b6040516102a49190612e12565b60405180910390f35b6102b561086e565b6040516102c29190612e12565b60405180910390f35b6102e560048036038101906102e09190612e2d565b610892565b005b61030160048036038101906102fc9190612e5a565b6108bf565b005b61031d60048036038101906103189190612ee3565b61091f565b60405161032a9190612f1f565b60405180910390f35b61034d60048036038101906103489190612f3a565b61093e565b005b61036960048036038101906103649190612dc3565b61095f565b6040516103769190612e12565b60405180910390f35b61039960048036038101906103949190612e2d565b610a04565b005b6103b560048036038101906103b09190612f3a565b610a31565b005b6103d160048036038101906103cc9190612e5a565b610ab4565b005b6103ed60048036038101906103e89190612d0e565b610ad4565b005b61040960048036038101906104049190612d0e565b610b5b565b6040516104169190612e12565b60405180910390f35b61043960048036038101906104349190612e2d565b610bcc565b005b61045560048036038101906104509190612d0e565b610bf9565b6040516104629190612d7c565b60405180910390f35b61048560048036038101906104809190612e2d565b610c80565b6040516104929190612e12565b60405180910390f35b6104b560048036038101906104b09190612e2d565b610de8565b6040516104c29190612e12565b60405180910390f35b6104e560048036038101906104e09190612f3a565b610ea0565b6040516104f29190612c02565b60405180910390f35b610503610f0a565b6040516105109190612cb6565b60405180910390f35b610533600480360381019061052e9190612e2d565b610f9c565b005b61053d610fc9565b60405161054a9190612f1f565b60405180910390f35b61056d60048036038101906105689190612fa6565b610fd0565b005b61058960048036038101906105849190612e2d565b610fe6565b005b6105a560048036038101906105a0919061311b565b611038565b005b6105af61109a565b6040516105bc9190612f1f565b60405180910390f35b6105df60048036038101906105da9190612d0e565b6110be565b6040516105ec9190612cb6565b60405180910390f35b6105fd6111b2565b60405161060a9190612f1f565b60405180910390f35b61062d60048036038101906106289190612f3a565b6111d6565b005b6106496004803603810190610644919061319e565b6111f7565b6040516106569190612c02565b60405180910390f35b600061066a8261128b565b9050919050565b6060600180546106809061320d565b80601f01602080910402602001604051908101604052809291908181526020018280546106ac9061320d565b80156106f95780601f106106ce576101008083540402835291602001916106f9565b820191906000526020600020905b8154815290600101906020018083116106dc57829003601f168201915b5050505050905090565b600061070e82611305565b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061075482610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bc906132b1565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166107e4611350565b73ffffffffffffffffffffffffffffffffffffffff16148061081357506108128161080d611350565b6111f7565b5b610852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084990613343565b60405180910390fd5b61085c8383611358565b505050565b6000600980549050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6108bc7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6826111d6565b50565b6108d06108ca611350565b82611411565b61090f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610906906133d5565b60405180910390fd5b61091a8383836114a6565b505050565b6000806000838152602001908152602001600020600101549050919050565b6109478261091f565b610950816117a0565b61095a83836117b4565b505050565b600061096a83610de8565b82106109ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a290613467565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610a2e7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa228261093e565b50565b610a39611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9d906134f9565b60405180910390fd5b610ab08282611894565b5050565b610acf83838360405180602001604052806000815250611038565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22610afe816117a0565b610b0f610b09611350565b83611411565b610b4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4590613565565b60405180910390fd5b610b5782611975565b5050565b6000610b65610861565b8210610ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9d906135f7565b60405180910390fd5b60098281548110610bba57610bb9613617565b5b90600052602060002001549050919050565b610bf67f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68261093e565b50565b600080610c0583611ac3565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e90613692565b60405180910390fd5b80915050919050565b60007f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610cac816117a0565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d13906136fe565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115610dbc577f00000000000000000000000000000000000000000000000000000000000000006001610d70610861565b610d7a919061374d565b1115610dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db2906137ef565b60405180910390fd5b5b610dc6600c611b00565b6000610dd2600c611b16565b9050610dde8482611b24565b8092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5090613881565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060028054610f199061320d565b80601f0160208091040260200160405190810160405280929190818152602001828054610f459061320d565b8015610f925780601f10610f6757610100808354040283529160200191610f92565b820191906000526020600020905b815481529060010190602001808311610f7557829003601f168201915b5050505050905090565b610fc67fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22826111d6565b50565b6000801b81565b610fe2610fdb611350565b8383611b42565b5050565b6000801b610ff3816117a0565b81600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b611049611043611350565b83611411565b611088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107f906133d5565b60405180910390fd5b61109484848484611caf565b50505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b60606110c982611d0b565b611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff906138ed565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f666196d30846040518363ffffffff1660e01b815260040161116592919061390d565b600060405180830381865afa158015611182573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906111ab91906139d7565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6111df8261091f565b6111e8816117a0565b6111f28383611894565b505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806112fe57506112fd82611d4c565b5b9050919050565b61130e81611d0b565b61134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134490613692565b60405180910390fd5b50565b600033905090565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166113cb83610bf9565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061141d83610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061145f575061145e81856111f7565b5b8061149d57508373ffffffffffffffffffffffffffffffffffffffff1661148584610703565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166114c682610bf9565b73ffffffffffffffffffffffffffffffffffffffff161461151c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151390613a92565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561158c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158390613b24565b60405180910390fd5b6115998383836001611e2e565b8273ffffffffffffffffffffffffffffffffffffffff166115b982610bf9565b73ffffffffffffffffffffffffffffffffffffffff161461160f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160690613a92565b60405180910390fd5b6005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461179b8383836001611ee6565b505050565b6117b1816117ac611350565b611eec565b50565b6117be8282610ea0565b61189057600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611835611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b61189e8282610ea0565b1561197157600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611916611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600061198082610bf9565b9050611990816000846001611e2e565b61199982610bf9565b90506005600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611abf816000846001611ee6565b5050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6001816000016000828254019250508190555050565b600081600001549050919050565b611b3e828260405180602001604052806000815250611f71565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611bb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba890613b90565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611ca29190612c02565b60405180910390a3505050565b611cba8484846114a6565b611cc684848484611fcc565b611d05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cfc90613c22565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff16611d2d83611ac3565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611e1757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611e275750611e2682612154565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611e955750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b611ed4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ecb90613c8e565b60405180910390fd5b611ee0848484846121ce565b50505050565b50505050565b611ef68282610ea0565b611f6d57611f038161232e565b611f118360001c602061235b565b604051602001611f22929190613d82565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f649190612cb6565b60405180910390fd5b5050565b611f7b8383612597565b611f886000848484611fcc565b611fc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fbe90613c22565b60405180910390fd5b505050565b6000611fed8473ffffffffffffffffffffffffffffffffffffffff166127b5565b15612147578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612016611350565b8786866040518563ffffffff1660e01b81526004016120389493929190613e11565b6020604051808303816000875af192505050801561207457506040513d601f19601f820116820180604052508101906120719190613e72565b60015b6120f7573d80600081146120a4576040519150601f19603f3d011682016040523d82523d6000602084013e6120a9565b606091505b506000815114156120ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e690613c22565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061214c565b600190505b949350505050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806121c757506121c6826127d8565b5b9050919050565b6121da84848484612842565b600181111561221e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221590613f11565b60405180910390fd5b6000829050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156122665761226181612848565b6122a5565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146122a4576122a38582612891565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156122e8576122e3816129fe565b612327565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614612326576123258482612acf565b5b5b5050505050565b60606123548273ffffffffffffffffffffffffffffffffffffffff16601460ff1661235b565b9050919050565b60606000600283600261236e9190613f31565b612378919061374d565b67ffffffffffffffff81111561239157612390612ff0565b5b6040519080825280601f01601f1916602001820160405280156123c35781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106123fb576123fa613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061245f5761245e613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261249f9190613f31565b6124a9919061374d565b90505b6001811115612549577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106124eb576124ea613617565b5b1a60f81b82828151811061250257612501613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061254290613f8b565b90506124ac565b506000841461258d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161258490614001565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612607576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125fe9061406d565b60405180910390fd5b61261081611d0b565b15612650576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612647906140d9565b60405180910390fd5b61265e600083836001611e2e565b61266781611d0b565b156126a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161269e906140d9565b60405180910390fd5b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46127b1600083836001611ee6565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b600980549050600a600083815260200190815260200160002081905550600981908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161289e84610de8565b6128a891906140f9565b905060006008600084815260200190815260200160002054905081811461298d576000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816008600083815260200190815260200160002081905550505b6008600084815260200190815260200160002060009055600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600980549050612a1291906140f9565b90506000600a6000848152602001908152602001600020549050600060098381548110612a4257612a41613617565b5b906000526020600020015490508060098381548110612a6457612a63613617565b5b906000526020600020018190555081600a600083815260200190815260200160002081905550600a6000858152602001908152602001600020600090556009805480612ab357612ab261412d565b5b6001900381819060005260206000200160009055905550505050565b6000612ada83610de8565b905081600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806008600084815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612b9781612b62565b8114612ba257600080fd5b50565b600081359050612bb481612b8e565b92915050565b600060208284031215612bd057612bcf612b58565b5b6000612bde84828501612ba5565b91505092915050565b60008115159050919050565b612bfc81612be7565b82525050565b6000602082019050612c176000830184612bf3565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612c57578082015181840152602081019050612c3c565b83811115612c66576000848401525b50505050565b6000601f19601f8301169050919050565b6000612c8882612c1d565b612c928185612c28565b9350612ca2818560208601612c39565b612cab81612c6c565b840191505092915050565b60006020820190508181036000830152612cd08184612c7d565b905092915050565b6000819050919050565b612ceb81612cd8565b8114612cf657600080fd5b50565b600081359050612d0881612ce2565b92915050565b600060208284031215612d2457612d23612b58565b5b6000612d3284828501612cf9565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612d6682612d3b565b9050919050565b612d7681612d5b565b82525050565b6000602082019050612d916000830184612d6d565b92915050565b612da081612d5b565b8114612dab57600080fd5b50565b600081359050612dbd81612d97565b92915050565b60008060408385031215612dda57612dd9612b58565b5b6000612de885828601612dae565b9250506020612df985828601612cf9565b9150509250929050565b612e0c81612cd8565b82525050565b6000602082019050612e276000830184612e03565b92915050565b600060208284031215612e4357612e42612b58565b5b6000612e5184828501612dae565b91505092915050565b600080600060608486031215612e7357612e72612b58565b5b6000612e8186828701612dae565b9350506020612e9286828701612dae565b9250506040612ea386828701612cf9565b9150509250925092565b6000819050919050565b612ec081612ead565b8114612ecb57600080fd5b50565b600081359050612edd81612eb7565b92915050565b600060208284031215612ef957612ef8612b58565b5b6000612f0784828501612ece565b91505092915050565b612f1981612ead565b82525050565b6000602082019050612f346000830184612f10565b92915050565b60008060408385031215612f5157612f50612b58565b5b6000612f5f85828601612ece565b9250506020612f7085828601612dae565b9150509250929050565b612f8381612be7565b8114612f8e57600080fd5b50565b600081359050612fa081612f7a565b92915050565b60008060408385031215612fbd57612fbc612b58565b5b6000612fcb85828601612dae565b9250506020612fdc85828601612f91565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61302882612c6c565b810181811067ffffffffffffffff8211171561304757613046612ff0565b5b80604052505050565b600061305a612b4e565b9050613066828261301f565b919050565b600067ffffffffffffffff82111561308657613085612ff0565b5b61308f82612c6c565b9050602081019050919050565b82818337600083830152505050565b60006130be6130b98461306b565b613050565b9050828152602081018484840111156130da576130d9612feb565b5b6130e584828561309c565b509392505050565b600082601f83011261310257613101612fe6565b5b81356131128482602086016130ab565b91505092915050565b6000806000806080858703121561313557613134612b58565b5b600061314387828801612dae565b945050602061315487828801612dae565b935050604061316587828801612cf9565b925050606085013567ffffffffffffffff81111561318657613185612b5d565b5b613192878288016130ed565b91505092959194509250565b600080604083850312156131b5576131b4612b58565b5b60006131c385828601612dae565b92505060206131d485828601612dae565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061322557607f821691505b60208210811415613239576132386131de565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600061329b602183612c28565b91506132a68261323f565b604082019050919050565b600060208201905081810360008301526132ca8161328e565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b600061332d603d83612c28565b9150613338826132d1565b604082019050919050565b6000602082019050818103600083015261335c81613320565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006133bf602d83612c28565b91506133ca82613363565b604082019050919050565b600060208201905081810360008301526133ee816133b2565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b6000613451602b83612c28565b915061345c826133f5565b604082019050919050565b6000602082019050818103600083015261348081613444565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b60006134e3602f83612c28565b91506134ee82613487565b604082019050919050565b60006020820190508181036000830152613512816134d6565b9050919050565b7f43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564600082015250565b600061354f602083612c28565b915061355a82613519565b602082019050919050565b6000602082019050818103600083015261357e81613542565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b60006135e1602c83612c28565b91506135ec82613585565b604082019050919050565b60006020820190508181036000830152613610816135d4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b600061367c601883612c28565b915061368782613646565b602082019050919050565b600060208201905081810360008301526136ab8161366f565b9050919050565b7f43616e6e6f74206d696e7420746f207a65726f20616464726573730000000000600082015250565b60006136e8601b83612c28565b91506136f3826136b2565b602082019050919050565b60006020820190508181036000830152613717816136db565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061375882612cd8565b915061376383612cd8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156137985761379761371e565b5b828201905092915050565b7f4578636565642074686520746f74616c20737570706c79000000000000000000600082015250565b60006137d9601783612c28565b91506137e4826137a3565b602082019050919050565b60006020820190508181036000830152613808816137cc565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600061386b602983612c28565b91506138768261380f565b604082019050919050565b6000602082019050818103600083015261389a8161385e565b9050919050565b7f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00600082015250565b60006138d7601f83612c28565b91506138e2826138a1565b602082019050919050565b60006020820190508181036000830152613906816138ca565b9050919050565b60006040820190506139226000830185612d6d565b61392f6020830184612e03565b9392505050565b600067ffffffffffffffff82111561395157613950612ff0565b5b61395a82612c6c565b9050602081019050919050565b600061397a61397584613936565b613050565b90508281526020810184848401111561399657613995612feb565b5b6139a1848285612c39565b509392505050565b600082601f8301126139be576139bd612fe6565b5b81516139ce848260208601613967565b91505092915050565b6000602082840312156139ed576139ec612b58565b5b600082015167ffffffffffffffff811115613a0b57613a0a612b5d565b5b613a17848285016139a9565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613a7c602583612c28565b9150613a8782613a20565b604082019050919050565b60006020820190508181036000830152613aab81613a6f565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613b0e602483612c28565b9150613b1982613ab2565b604082019050919050565b60006020820190508181036000830152613b3d81613b01565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613b7a601983612c28565b9150613b8582613b44565b602082019050919050565b60006020820190508181036000830152613ba981613b6d565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613c0c603283612c28565b9150613c1782613bb0565b604082019050919050565b60006020820190508181036000830152613c3b81613bff565b9050919050565b7f546f6b656e206e6f74207472616e7366657261626c6500000000000000000000600082015250565b6000613c78601683612c28565b9150613c8382613c42565b602082019050919050565b60006020820190508181036000830152613ca781613c6b565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000613cef601783613cae565b9150613cfa82613cb9565b601782019050919050565b6000613d1082612c1d565b613d1a8185613cae565b9350613d2a818560208601612c39565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000613d6c601183613cae565b9150613d7782613d36565b601182019050919050565b6000613d8d82613ce2565b9150613d998285613d05565b9150613da482613d5f565b9150613db08284613d05565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b6000613de382613dbc565b613ded8185613dc7565b9350613dfd818560208601612c39565b613e0681612c6c565b840191505092915050565b6000608082019050613e266000830187612d6d565b613e336020830186612d6d565b613e406040830185612e03565b8181036060830152613e528184613dd8565b905095945050505050565b600081519050613e6c81612b8e565b92915050565b600060208284031215613e8857613e87612b58565b5b6000613e9684828501613e5d565b91505092915050565b7f455243373231456e756d657261626c653a20636f6e736563757469766520747260008201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b6000613efb603583612c28565b9150613f0682613e9f565b604082019050919050565b60006020820190508181036000830152613f2a81613eee565b9050919050565b6000613f3c82612cd8565b9150613f4783612cd8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613f8057613f7f61371e565b5b828202905092915050565b6000613f9682612cd8565b91506000821415613faa57613fa961371e565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613feb602083612c28565b9150613ff682613fb5565b602082019050919050565b6000602082019050818103600083015261401a81613fde565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000614057602083612c28565b915061406282614021565b602082019050919050565b600060208201905081810360008301526140868161404a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006140c3601c83612c28565b91506140ce8261408d565b602082019050919050565b600060208201905081810360008301526140f2816140b6565b9050919050565b600061410482612cd8565b915061410f83612cd8565b9250828210156141225761412161371e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212204c8d90453794cac6edd5443243985dcd852e5fe0e1e2ceac551947a7ca7376c564736f6c634300080a0033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101f05760003560e01c8063530dd0791161010f578063a22cb465116100a2578063c87b56dd11610071578063c87b56dd146105c5578063d5391393146105f5578063d547741f14610613578063e985e9c51461062f576101f0565b8063a22cb46514610553578063b6a6a93d1461056f578063b88d4fde1461058b578063b930908f146105a7576101f0565b806391d14854116100de57806391d14854146104cb57806395d89b41146104fb578063965f4c6014610519578063a217fddf14610535576101f0565b8063530dd0791461041f5780636352211e1461043b5780636a6278421461046b57806370a082311461049b576101f0565b8063248a9ca31161018757806336568abe1161015657806336568abe1461039b57806342842e0e146103b757806342966c68146103d35780634f6ccce7146103ef576101f0565b8063248a9ca3146103035780632f2ff15d146103335780632f745c591461034f578063327ba6151461037f576101f0565b806318160ddd116101c357806318160ddd1461028f57806319d1997a146102ad5780631cf4e3ee146102cb57806323b872dd146102e7576101f0565b806301ffc9a7146101f557806306fdde0314610225578063081812fc14610243578063095ea7b314610273575b600080fd5b61020f600480360381019061020a9190612bba565b61065f565b60405161021c9190612c02565b60405180910390f35b61022d610671565b60405161023a9190612cb6565b60405180910390f35b61025d60048036038101906102589190612d0e565b610703565b60405161026a9190612d7c565b60405180910390f35b61028d60048036038101906102889190612dc3565b610749565b005b610297610861565b6040516102a49190612e12565b60405180910390f35b6102b561086e565b6040516102c29190612e12565b60405180910390f35b6102e560048036038101906102e09190612e2d565b610892565b005b61030160048036038101906102fc9190612e5a565b6108bf565b005b61031d60048036038101906103189190612ee3565b61091f565b60405161032a9190612f1f565b60405180910390f35b61034d60048036038101906103489190612f3a565b61093e565b005b61036960048036038101906103649190612dc3565b61095f565b6040516103769190612e12565b60405180910390f35b61039960048036038101906103949190612e2d565b610a04565b005b6103b560048036038101906103b09190612f3a565b610a31565b005b6103d160048036038101906103cc9190612e5a565b610ab4565b005b6103ed60048036038101906103e89190612d0e565b610ad4565b005b61040960048036038101906104049190612d0e565b610b5b565b6040516104169190612e12565b60405180910390f35b61043960048036038101906104349190612e2d565b610bcc565b005b61045560048036038101906104509190612d0e565b610bf9565b6040516104629190612d7c565b60405180910390f35b61048560048036038101906104809190612e2d565b610c80565b6040516104929190612e12565b60405180910390f35b6104b560048036038101906104b09190612e2d565b610de8565b6040516104c29190612e12565b60405180910390f35b6104e560048036038101906104e09190612f3a565b610ea0565b6040516104f29190612c02565b60405180910390f35b610503610f0a565b6040516105109190612cb6565b60405180910390f35b610533600480360381019061052e9190612e2d565b610f9c565b005b61053d610fc9565b60405161054a9190612f1f565b60405180910390f35b61056d60048036038101906105689190612fa6565b610fd0565b005b61058960048036038101906105849190612e2d565b610fe6565b005b6105a560048036038101906105a0919061311b565b611038565b005b6105af61109a565b6040516105bc9190612f1f565b60405180910390f35b6105df60048036038101906105da9190612d0e565b6110be565b6040516105ec9190612cb6565b60405180910390f35b6105fd6111b2565b60405161060a9190612f1f565b60405180910390f35b61062d60048036038101906106289190612f3a565b6111d6565b005b6106496004803603810190610644919061319e565b6111f7565b6040516106569190612c02565b60405180910390f35b600061066a8261128b565b9050919050565b6060600180546106809061320d565b80601f01602080910402602001604051908101604052809291908181526020018280546106ac9061320d565b80156106f95780601f106106ce576101008083540402835291602001916106f9565b820191906000526020600020905b8154815290600101906020018083116106dc57829003601f168201915b5050505050905090565b600061070e82611305565b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061075482610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bc906132b1565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166107e4611350565b73ffffffffffffffffffffffffffffffffffffffff16148061081357506108128161080d611350565b6111f7565b5b610852576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084990613343565b60405180910390fd5b61085c8383611358565b505050565b6000600980549050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6108bc7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6826111d6565b50565b6108d06108ca611350565b82611411565b61090f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610906906133d5565b60405180910390fd5b61091a8383836114a6565b505050565b6000806000838152602001908152602001600020600101549050919050565b6109478261091f565b610950816117a0565b61095a83836117b4565b505050565b600061096a83610de8565b82106109ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a290613467565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610a2e7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa228261093e565b50565b610a39611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610aa6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9d906134f9565b60405180910390fd5b610ab08282611894565b5050565b610acf83838360405180602001604052806000815250611038565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22610afe816117a0565b610b0f610b09611350565b83611411565b610b4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4590613565565b60405180910390fd5b610b5782611975565b5050565b6000610b65610861565b8210610ba6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9d906135f7565b60405180910390fd5b60098281548110610bba57610bb9613617565b5b90600052602060002001549050919050565b610bf67f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68261093e565b50565b600080610c0583611ac3565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e90613692565b60405180910390fd5b80915050919050565b60007f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610cac816117a0565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d13906136fe565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115610dbc577f00000000000000000000000000000000000000000000000000000000000000006001610d70610861565b610d7a919061374d565b1115610dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db2906137ef565b60405180910390fd5b5b610dc6600c611b00565b6000610dd2600c611b16565b9050610dde8482611b24565b8092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5090613881565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060028054610f199061320d565b80601f0160208091040260200160405190810160405280929190818152602001828054610f459061320d565b8015610f925780601f10610f6757610100808354040283529160200191610f92565b820191906000526020600020905b815481529060010190602001808311610f7557829003601f168201915b5050505050905090565b610fc67fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22826111d6565b50565b6000801b81565b610fe2610fdb611350565b8383611b42565b5050565b6000801b610ff3816117a0565b81600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b611049611043611350565b83611411565b611088576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107f906133d5565b60405180910390fd5b61109484848484611caf565b50505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b60606110c982611d0b565b611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff906138ed565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f666196d30846040518363ffffffff1660e01b815260040161116592919061390d565b600060405180830381865afa158015611182573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906111ab91906139d7565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6111df8261091f565b6111e8816117a0565b6111f28383611894565b505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806112fe57506112fd82611d4c565b5b9050919050565b61130e81611d0b565b61134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134490613692565b60405180910390fd5b50565b600033905090565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166113cb83610bf9565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061141d83610bf9565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061145f575061145e81856111f7565b5b8061149d57508373ffffffffffffffffffffffffffffffffffffffff1661148584610703565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166114c682610bf9565b73ffffffffffffffffffffffffffffffffffffffff161461151c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151390613a92565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561158c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158390613b24565b60405180910390fd5b6115998383836001611e2e565b8273ffffffffffffffffffffffffffffffffffffffff166115b982610bf9565b73ffffffffffffffffffffffffffffffffffffffff161461160f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161160690613a92565b60405180910390fd5b6005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461179b8383836001611ee6565b505050565b6117b1816117ac611350565b611eec565b50565b6117be8282610ea0565b61189057600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611835611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b61189e8282610ea0565b1561197157600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611916611350565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b600061198082610bf9565b9050611990816000846001611e2e565b61199982610bf9565b90506005600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611abf816000846001611ee6565b5050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6001816000016000828254019250508190555050565b600081600001549050919050565b611b3e828260405180602001604052806000815250611f71565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611bb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba890613b90565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611ca29190612c02565b60405180910390a3505050565b611cba8484846114a6565b611cc684848484611fcc565b611d05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cfc90613c22565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff16611d2d83611ac3565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611e1757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611e275750611e2682612154565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611e955750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b611ed4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ecb90613c8e565b60405180910390fd5b611ee0848484846121ce565b50505050565b50505050565b611ef68282610ea0565b611f6d57611f038161232e565b611f118360001c602061235b565b604051602001611f22929190613d82565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f649190612cb6565b60405180910390fd5b5050565b611f7b8383612597565b611f886000848484611fcc565b611fc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fbe90613c22565b60405180910390fd5b505050565b6000611fed8473ffffffffffffffffffffffffffffffffffffffff166127b5565b15612147578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612016611350565b8786866040518563ffffffff1660e01b81526004016120389493929190613e11565b6020604051808303816000875af192505050801561207457506040513d601f19601f820116820180604052508101906120719190613e72565b60015b6120f7573d80600081146120a4576040519150601f19603f3d011682016040523d82523d6000602084013e6120a9565b606091505b506000815114156120ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e690613c22565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061214c565b600190505b949350505050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806121c757506121c6826127d8565b5b9050919050565b6121da84848484612842565b600181111561221e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161221590613f11565b60405180910390fd5b6000829050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156122665761226181612848565b6122a5565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146122a4576122a38582612891565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156122e8576122e3816129fe565b612327565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614612326576123258482612acf565b5b5b5050505050565b60606123548273ffffffffffffffffffffffffffffffffffffffff16601460ff1661235b565b9050919050565b60606000600283600261236e9190613f31565b612378919061374d565b67ffffffffffffffff81111561239157612390612ff0565b5b6040519080825280601f01601f1916602001820160405280156123c35781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106123fb576123fa613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061245f5761245e613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261249f9190613f31565b6124a9919061374d565b90505b6001811115612549577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106124eb576124ea613617565b5b1a60f81b82828151811061250257612501613617565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061254290613f8b565b90506124ac565b506000841461258d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161258490614001565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612607576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125fe9061406d565b60405180910390fd5b61261081611d0b565b15612650576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612647906140d9565b60405180910390fd5b61265e600083836001611e2e565b61266781611d0b565b156126a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161269e906140d9565b60405180910390fd5b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46127b1600083836001611ee6565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b600980549050600a600083815260200190815260200160002081905550600981908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161289e84610de8565b6128a891906140f9565b905060006008600084815260200190815260200160002054905081811461298d576000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816008600083815260200190815260200160002081905550505b6008600084815260200190815260200160002060009055600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600980549050612a1291906140f9565b90506000600a6000848152602001908152602001600020549050600060098381548110612a4257612a41613617565b5b906000526020600020015490508060098381548110612a6457612a63613617565b5b906000526020600020018190555081600a600083815260200190815260200160002081905550600a6000858152602001908152602001600020600090556009805480612ab357612ab261412d565b5b6001900381819060005260206000200160009055905550505050565b6000612ada83610de8565b905081600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806008600084815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612b9781612b62565b8114612ba257600080fd5b50565b600081359050612bb481612b8e565b92915050565b600060208284031215612bd057612bcf612b58565b5b6000612bde84828501612ba5565b91505092915050565b60008115159050919050565b612bfc81612be7565b82525050565b6000602082019050612c176000830184612bf3565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612c57578082015181840152602081019050612c3c565b83811115612c66576000848401525b50505050565b6000601f19601f8301169050919050565b6000612c8882612c1d565b612c928185612c28565b9350612ca2818560208601612c39565b612cab81612c6c565b840191505092915050565b60006020820190508181036000830152612cd08184612c7d565b905092915050565b6000819050919050565b612ceb81612cd8565b8114612cf657600080fd5b50565b600081359050612d0881612ce2565b92915050565b600060208284031215612d2457612d23612b58565b5b6000612d3284828501612cf9565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612d6682612d3b565b9050919050565b612d7681612d5b565b82525050565b6000602082019050612d916000830184612d6d565b92915050565b612da081612d5b565b8114612dab57600080fd5b50565b600081359050612dbd81612d97565b92915050565b60008060408385031215612dda57612dd9612b58565b5b6000612de885828601612dae565b9250506020612df985828601612cf9565b9150509250929050565b612e0c81612cd8565b82525050565b6000602082019050612e276000830184612e03565b92915050565b600060208284031215612e4357612e42612b58565b5b6000612e5184828501612dae565b91505092915050565b600080600060608486031215612e7357612e72612b58565b5b6000612e8186828701612dae565b9350506020612e9286828701612dae565b9250506040612ea386828701612cf9565b9150509250925092565b6000819050919050565b612ec081612ead565b8114612ecb57600080fd5b50565b600081359050612edd81612eb7565b92915050565b600060208284031215612ef957612ef8612b58565b5b6000612f0784828501612ece565b91505092915050565b612f1981612ead565b82525050565b6000602082019050612f346000830184612f10565b92915050565b60008060408385031215612f5157612f50612b58565b5b6000612f5f85828601612ece565b9250506020612f7085828601612dae565b9150509250929050565b612f8381612be7565b8114612f8e57600080fd5b50565b600081359050612fa081612f7a565b92915050565b60008060408385031215612fbd57612fbc612b58565b5b6000612fcb85828601612dae565b9250506020612fdc85828601612f91565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61302882612c6c565b810181811067ffffffffffffffff8211171561304757613046612ff0565b5b80604052505050565b600061305a612b4e565b9050613066828261301f565b919050565b600067ffffffffffffffff82111561308657613085612ff0565b5b61308f82612c6c565b9050602081019050919050565b82818337600083830152505050565b60006130be6130b98461306b565b613050565b9050828152602081018484840111156130da576130d9612feb565b5b6130e584828561309c565b509392505050565b600082601f83011261310257613101612fe6565b5b81356131128482602086016130ab565b91505092915050565b6000806000806080858703121561313557613134612b58565b5b600061314387828801612dae565b945050602061315487828801612dae565b935050604061316587828801612cf9565b925050606085013567ffffffffffffffff81111561318657613185612b5d565b5b613192878288016130ed565b91505092959194509250565b600080604083850312156131b5576131b4612b58565b5b60006131c385828601612dae565b92505060206131d485828601612dae565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061322557607f821691505b60208210811415613239576132386131de565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b600061329b602183612c28565b91506132a68261323f565b604082019050919050565b600060208201905081810360008301526132ca8161328e565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b600061332d603d83612c28565b9150613338826132d1565b604082019050919050565b6000602082019050818103600083015261335c81613320565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006133bf602d83612c28565b91506133ca82613363565b604082019050919050565b600060208201905081810360008301526133ee816133b2565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b6000613451602b83612c28565b915061345c826133f5565b604082019050919050565b6000602082019050818103600083015261348081613444565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b60006134e3602f83612c28565b91506134ee82613487565b604082019050919050565b60006020820190508181036000830152613512816134d6565b9050919050565b7f43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564600082015250565b600061354f602083612c28565b915061355a82613519565b602082019050919050565b6000602082019050818103600083015261357e81613542565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b60006135e1602c83612c28565b91506135ec82613585565b604082019050919050565b60006020820190508181036000830152613610816135d4565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b600061367c601883612c28565b915061368782613646565b602082019050919050565b600060208201905081810360008301526136ab8161366f565b9050919050565b7f43616e6e6f74206d696e7420746f207a65726f20616464726573730000000000600082015250565b60006136e8601b83612c28565b91506136f3826136b2565b602082019050919050565b60006020820190508181036000830152613717816136db565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061375882612cd8565b915061376383612cd8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156137985761379761371e565b5b828201905092915050565b7f4578636565642074686520746f74616c20737570706c79000000000000000000600082015250565b60006137d9601783612c28565b91506137e4826137a3565b602082019050919050565b60006020820190508181036000830152613808816137cc565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b600061386b602983612c28565b91506138768261380f565b604082019050919050565b6000602082019050818103600083015261389a8161385e565b9050919050565b7f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00600082015250565b60006138d7601f83612c28565b91506138e2826138a1565b602082019050919050565b60006020820190508181036000830152613906816138ca565b9050919050565b60006040820190506139226000830185612d6d565b61392f6020830184612e03565b9392505050565b600067ffffffffffffffff82111561395157613950612ff0565b5b61395a82612c6c565b9050602081019050919050565b600061397a61397584613936565b613050565b90508281526020810184848401111561399657613995612feb565b5b6139a1848285612c39565b509392505050565b600082601f8301126139be576139bd612fe6565b5b81516139ce848260208601613967565b91505092915050565b6000602082840312156139ed576139ec612b58565b5b600082015167ffffffffffffffff811115613a0b57613a0a612b5d565b5b613a17848285016139a9565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613a7c602583612c28565b9150613a8782613a20565b604082019050919050565b60006020820190508181036000830152613aab81613a6f565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613b0e602483612c28565b9150613b1982613ab2565b604082019050919050565b60006020820190508181036000830152613b3d81613b01565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613b7a601983612c28565b9150613b8582613b44565b602082019050919050565b60006020820190508181036000830152613ba981613b6d565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000613c0c603283612c28565b9150613c1782613bb0565b604082019050919050565b60006020820190508181036000830152613c3b81613bff565b9050919050565b7f546f6b656e206e6f74207472616e7366657261626c6500000000000000000000600082015250565b6000613c78601683612c28565b9150613c8382613c42565b602082019050919050565b60006020820190508181036000830152613ca781613c6b565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000613cef601783613cae565b9150613cfa82613cb9565b601782019050919050565b6000613d1082612c1d565b613d1a8185613cae565b9350613d2a818560208601612c39565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b6000613d6c601183613cae565b9150613d7782613d36565b601182019050919050565b6000613d8d82613ce2565b9150613d998285613d05565b9150613da482613d5f565b9150613db08284613d05565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b6000613de382613dbc565b613ded8185613dc7565b9350613dfd818560208601612c39565b613e0681612c6c565b840191505092915050565b6000608082019050613e266000830187612d6d565b613e336020830186612d6d565b613e406040830185612e03565b8181036060830152613e528184613dd8565b905095945050505050565b600081519050613e6c81612b8e565b92915050565b600060208284031215613e8857613e87612b58565b5b6000613e9684828501613e5d565b91505092915050565b7f455243373231456e756d657261626c653a20636f6e736563757469766520747260008201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b6000613efb603583612c28565b9150613f0682613e9f565b604082019050919050565b60006020820190508181036000830152613f2a81613eee565b9050919050565b6000613f3c82612cd8565b9150613f4783612cd8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615613f8057613f7f61371e565b5b828202905092915050565b6000613f9682612cd8565b91506000821415613faa57613fa961371e565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613feb602083612c28565b9150613ff682613fb5565b602082019050919050565b6000602082019050818103600083015261401a81613fde565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000614057602083612c28565b915061406282614021565b602082019050919050565b600060208201905081810360008301526140868161404a565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006140c3601c83612c28565b91506140ce8261408d565b602082019050919050565b600060208201905081810360008301526140f2816140b6565b9050919050565b600061410482612cd8565b915061410f83612cd8565b9250828210156141225761412161371e565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212204c8d90453794cac6edd5443243985dcd852e5fe0e1e2ceac551947a7ca7376c564736f6c634300080a0033", + "metadata": "{\"compiler\":{\"version\":\"0.8.10+commit.fc410830\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_symbol\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_supplyLimt\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"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\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BURN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINTER_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"count\",\"type\":\"uint256\"}],\"name\":\"batchMint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"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\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxBatchSize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"mint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"removeBurnRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"removeMintRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"setBurnRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"setMintRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"supplyLimit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"tokenOfOwnerByIndex\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"metaAddress\",\"type\":\"address\"}],\"name\":\"updateMetaAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"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`.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"removeBurnRole(address)\":{\"details\":\"Remove burn role to address\"},\"removeMintRole(address)\":{\"details\":\"Remove mint role to address\"},\"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.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"setBurnRole(address)\":{\"details\":\"Grant burn role to address\"},\"setMintRole(address)\":{\"details\":\"Grant mint role to address\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenByIndex(uint256)\":{\"details\":\"See {IERC721Enumerable-tokenByIndex}.\"},\"tokenOfOwnerByIndex(address,uint256)\":{\"details\":\"See {IERC721Enumerable-tokenOfOwnerByIndex}.\"},\"tokenURI(uint256)\":{\"details\":\"one type badge has same tokenURI\"},\"totalSupply()\":{\"details\":\"See {IERC721Enumerable-totalSupply}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"},\"updateMetaAddress(address)\":{\"details\":\"Set token URI\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/tokens/erc721/NFTSbt.sol\":\"NFTSbt\"},\"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/IAccessControl.sol\":{\"keccak256\":\"0x59ce320a585d7e1f163cd70390a0ef2ff9cec832e2aa544293a00692465a7a57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb2c137c343ef0c4c7ce7b18c1d108afdc9d315a04e48307288d2d05adcbde3a\",\"dweb:/ipfs/QmUxhrAQM3MM3FF5j7AtcXLXguWCJBHJ14BRdVtuoQc8Fh\"]},\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x2c309e7df9e05e6ce15bedfe74f3c61b467fc37e0fae9eab496acf5ea0bbd7ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7063b5c98711a98018ba4635ac74cee1c1cfa2ea01099498e062699ed9530005\",\"dweb:/ipfs/QmeJ8rGXkcv7RrqLdAW8PCXPAykxVsddfYY6g5NaTwmRFE\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x5bce51e11f7d194b79ea59fe00c9e8de9fa2c5530124960f29a24d4c740a3266\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e66dfde185df46104c11bc89d08fa0760737aa59a2b8546a656473d810a8ea4\",\"dweb:/ipfs/QmXvyqtXPaPss2PD7eqPoSao5Szm2n6UMoiG8TZZDjmChR\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol\":{\"keccak256\":\"0xa8796bd16014cefb8c26449413981a49c510f92a98d6828494f5fd046223ced3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63a5e0bb5a7d182e0d0eef87033f78115eab791de3626a929bc98c157087880a\",\"dweb:/ipfs/QmetkXAu2CJKS4qrZtEQPU8okAPwUwa6HL4XYwk8vrYMk8\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol\":{\"keccak256\":\"0xd1556954440b31c97a142c6ba07d5cade45f96fafd52091d33a14ebe365aecbf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26fef835622b46a5ba08b3ef6b46a22e94b5f285d0f0fb66b703bd30217d2c34\",\"dweb:/ipfs/QmZ548qdwfL1qF7aXz3xh1GCdTiST81kGGuKRqVUfYmPZR\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Counters.sol\":{\"keccak256\":\"0xf0018c2440fbe238dd3a8732fa8e17a0f9dce84d31451dc8a32f6d62b349c9f1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e1c62884d55b70f3ae5432b44bb3166ad71ae3acd19c57ab6ddc3c87c325ee\",\"dweb:/ipfs/QmezuXg5GK5oeA4F91EZhozBFekhq5TD966bHPH18cCqhu\"]},\"@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\"]},\"project:/contracts/interfaces/IMetaData.sol\":{\"keccak256\":\"0x30907dd89502219f11e6a2584bdcadecd842115ba17db1a86d3e5a43acdb8662\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e719ea33d0f10b6094da881360bc033248e90d0f6c85d590762c6b8e555e8bb2\",\"dweb:/ipfs/Qmf4MV5wH2fsE4nwheutoMKSZmoGghZrnr5pzgWMgm3Q9D\"]},\"project:/contracts/tokens/erc721/NFTSbt.sol\":{\"keccak256\":\"0xbfc94d35851a32d6bcd25efc85467a28d58761478c4eca53e3611ef7baac28f7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e7d9399abe068a1de184cda3726f1bc64e4c071c2e06080db6e9629f4bfc1b0\",\"dweb:/ipfs/QmXjuLAcrsVnNC6zAbmEdKsLpH9bfJe5UXybA8kbyvc8Wj\"]}},\"version\":1}", + "bytecode": "0x60a06040526101f4600d553480156200001757600080fd5b5060405162004d2b38038062004d2b83398181016040528101906200003d9190620005ea565b828281600190805190602001906200005792919062000362565b5080600290805190602001906200007092919062000362565b5050508060808181525050620000b07fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa226000801b6200016760201b60201c565b620000e57f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66000801b6200016760201b60201c565b620000fa6000801b33620001ca60201b60201c565b6200012c7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a633620001ca60201b60201c565b6200015e7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2233620001ca60201b60201c565b505050620006e9565b60006200017a83620001e060201b60201c565b905081600080858152602001908152602001600020600101819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b620001dc8282620001ff60201b60201c565b5050565b6000806000838152602001908152602001600020600101549050919050565b620002118282620002f060201b60201c565b620002ec57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002916200035a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600033905090565b8280546200037090620006b3565b90600052602060002090601f016020900481019282620003945760008555620003e0565b82601f10620003af57805160ff1916838001178555620003e0565b82800160010185558215620003e0579182015b82811115620003df578251825591602001919060010190620003c2565b5b509050620003ef9190620003f3565b5090565b5b808211156200040e576000816000905550600101620003f4565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200047b8262000430565b810181811067ffffffffffffffff821117156200049d576200049c62000441565b5b80604052505050565b6000620004b262000412565b9050620004c0828262000470565b919050565b600067ffffffffffffffff821115620004e357620004e262000441565b5b620004ee8262000430565b9050602081019050919050565b60005b838110156200051b578082015181840152602081019050620004fe565b838111156200052b576000848401525b50505050565b6000620005486200054284620004c5565b620004a6565b9050828152602081018484840111156200056757620005666200042b565b5b62000574848285620004fb565b509392505050565b600082601f83011262000594576200059362000426565b5b8151620005a684826020860162000531565b91505092915050565b6000819050919050565b620005c481620005af565b8114620005d057600080fd5b50565b600081519050620005e481620005b9565b92915050565b6000806000606084860312156200060657620006056200041c565b5b600084015167ffffffffffffffff81111562000627576200062662000421565b5b62000635868287016200057c565b935050602084015167ffffffffffffffff81111562000659576200065862000421565b5b62000667868287016200057c565b92505060406200067a86828701620005d3565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620006cc57607f821691505b60208210811415620006e357620006e262000684565b5b50919050565b60805161460a62000721600039600081816108d401528181610c7d01528181610ca401528181610f970152610fbe015261460a6000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c80634f6ccce71161011a578063a217fddf116100ad578063b930908f1161007c578063b930908f1461060b578063c87b56dd14610629578063d539139314610659578063d547741f14610677578063e985e9c51461069357610206565b8063a217fddf14610599578063a22cb465146105b7578063b6a6a93d146105d3578063b88d4fde146105ef57610206565b806370a08231116100e957806370a08231146104ff57806391d148541461052f57806395d89b411461055f578063965f4c601461057d57610206565b80634f6ccce714610453578063530dd079146104835780636352211e1461049f5780636a627842146104cf57610206565b8063248a9ca31161019d578063327ba6151161016c578063327ba615146103b357806336568abe146103cf57806342842e0e146103eb57806342966c681461040757806343508b051461042357610206565b8063248a9ca3146103195780632913daa0146103495780632f2ff15d146103675780632f745c591461038357610206565b806318160ddd116101d957806318160ddd146102a557806319d1997a146102c35780631cf4e3ee146102e157806323b872dd146102fd57610206565b806301ffc9a71461020b57806306fdde031461023b578063081812fc14610259578063095ea7b314610289575b600080fd5b61022560048036038101906102209190612e31565b6106c3565b6040516102329190612e79565b60405180910390f35b6102436106d5565b6040516102509190612f2d565b60405180910390f35b610273600480360381019061026e9190612f85565b610767565b6040516102809190612ff3565b60405180910390f35b6102a3600480360381019061029e919061303a565b6107ad565b005b6102ad6108c5565b6040516102ba9190613089565b60405180910390f35b6102cb6108d2565b6040516102d89190613089565b60405180910390f35b6102fb60048036038101906102f691906130a4565b6108f6565b005b610317600480360381019061031291906130d1565b610923565b005b610333600480360381019061032e919061315a565b610983565b6040516103409190613196565b60405180910390f35b6103516109a2565b60405161035e9190613089565b60405180910390f35b610381600480360381019061037c91906131b1565b6109a8565b005b61039d6004803603810190610398919061303a565b6109c9565b6040516103aa9190613089565b60405180910390f35b6103cd60048036038101906103c891906130a4565b610a6e565b005b6103e960048036038101906103e491906131b1565b610a9b565b005b610405600480360381019061040091906130d1565b610b1e565b005b610421600480360381019061041c9190612f85565b610b3e565b005b61043d6004803603810190610438919061303a565b610bc5565b60405161044a91906132af565b60405180910390f35b61046d60048036038101906104689190612f85565b610dd2565b60405161047a9190613089565b60405180910390f35b61049d600480360381019061049891906130a4565b610e43565b005b6104b960048036038101906104b49190612f85565b610e70565b6040516104c69190612ff3565b60405180910390f35b6104e960048036038101906104e491906130a4565b610ef7565b6040516104f69190613089565b60405180910390f35b610519600480360381019061051491906130a4565b61105f565b6040516105269190613089565b60405180910390f35b610549600480360381019061054491906131b1565b611117565b6040516105569190612e79565b60405180910390f35b610567611181565b6040516105749190612f2d565b60405180910390f35b610597600480360381019061059291906130a4565b611213565b005b6105a1611240565b6040516105ae9190613196565b60405180910390f35b6105d160048036038101906105cc91906132fd565b611247565b005b6105ed60048036038101906105e891906130a4565b61125d565b005b61060960048036038101906106049190613472565b6112af565b005b610613611311565b6040516106209190613196565b60405180910390f35b610643600480360381019061063e9190612f85565b611335565b6040516106509190612f2d565b60405180910390f35b610661611429565b60405161066e9190613196565b60405180910390f35b610691600480360381019061068c91906131b1565b61144d565b005b6106ad60048036038101906106a891906134f5565b61146e565b6040516106ba9190612e79565b60405180910390f35b60006106ce82611502565b9050919050565b6060600180546106e490613564565b80601f016020809104026020016040519081016040528092919081815260200182805461071090613564565b801561075d5780601f106107325761010080835404028352916020019161075d565b820191906000526020600020905b81548152906001019060200180831161074057829003601f168201915b5050505050905090565b60006107728261157c565b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006107b882610e70565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610829576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082090613608565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108486115c7565b73ffffffffffffffffffffffffffffffffffffffff1614806108775750610876816108716115c7565b61146e565b5b6108b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ad9061369a565b60405180910390fd5b6108c083836115cf565b505050565b6000600980549050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6109207f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68261144d565b50565b61093461092e6115c7565b82611688565b610973576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096a9061372c565b60405180910390fd5b61097e83838361171d565b505050565b6000806000838152602001908152602001600020600101549050919050565b600d5481565b6109b182610983565b6109ba81611a17565b6109c48383611a2b565b505050565b60006109d48361105f565b8210610a15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0c906137be565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610a987fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22826109a8565b50565b610aa36115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0790613850565b60405180910390fd5b610b1a8282611b0b565b5050565b610b39838383604051806020016040528060008152506112af565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22610b6881611a17565b610b79610b736115c7565b83611688565b610bb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baf906138bc565b60405180910390fd5b610bc182611bec565b5050565b60607f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610bf181611a17565b60008311610c34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2b90613928565b60405180910390fd5b600d54831115610c79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7090613994565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115610d18577f000000000000000000000000000000000000000000000000000000000000000083610ccc6108c5565b610cd691906139e3565b1115610d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0e90613a85565b60405180910390fd5b5b60008367ffffffffffffffff811115610d3457610d33613347565b5b604051908082528060200260200182016040528015610d625781602001602082028036833780820191505090505b50905060005b84811015610dc657610d7a600c611d3a565b6000610d86600c611d50565b9050610d928782611d5e565b80838381518110610da657610da5613aa5565b5b602002602001018181525050508080610dbe90613ad4565b915050610d68565b50809250505092915050565b6000610ddc6108c5565b8210610e1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1490613b8f565b60405180910390fd5b60098281548110610e3157610e30613aa5565b5b90600052602060002001549050919050565b610e6d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6826109a8565b50565b600080610e7c83611d7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee590613bfb565b60405180910390fd5b80915050919050565b60007f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610f2381611a17565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8a90613c67565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115611033577f00000000000000000000000000000000000000000000000000000000000000006001610fe76108c5565b610ff191906139e3565b1115611032576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102990613a85565b60405180910390fd5b5b61103d600c611d3a565b6000611049600c611d50565b90506110558482611d5e565b8092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c790613cf9565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60606002805461119090613564565b80601f01602080910402602001604051908101604052809291908181526020018280546111bc90613564565b80156112095780601f106111de57610100808354040283529160200191611209565b820191906000526020600020905b8154815290600101906020018083116111ec57829003601f168201915b5050505050905090565b61123d7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa228261144d565b50565b6000801b81565b6112596112526115c7565b8383611db9565b5050565b6000801b61126a81611a17565b81600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6112c06112ba6115c7565b83611688565b6112ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f69061372c565b60405180910390fd5b61130b84848484611f26565b50505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b606061134082611f82565b61137f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137690613d65565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f666196d30846040518363ffffffff1660e01b81526004016113dc929190613d85565b600060405180830381865afa1580156113f9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906114229190613e4f565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61145682610983565b61145f81611a17565b6114698383611b0b565b505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611575575061157482611fc3565b5b9050919050565b61158581611f82565b6115c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bb90613bfb565b60405180910390fd5b50565b600033905090565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661164283610e70565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061169483610e70565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806116d657506116d5818561146e565b5b8061171457508373ffffffffffffffffffffffffffffffffffffffff166116fc84610767565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661173d82610e70565b73ffffffffffffffffffffffffffffffffffffffff1614611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613f0a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fa90613f9c565b60405180910390fd5b61181083838360016120a5565b8273ffffffffffffffffffffffffffffffffffffffff1661183082610e70565b73ffffffffffffffffffffffffffffffffffffffff1614611886576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187d90613f0a565b60405180910390fd5b6005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611a12838383600161215d565b505050565b611a2881611a236115c7565b612163565b50565b611a358282611117565b611b0757600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611aac6115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b611b158282611117565b15611be857600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611b8d6115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611bf782610e70565b9050611c078160008460016120a5565b611c1082610e70565b90506005600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611d3681600084600161215d565b5050565b6001816000016000828254019250508190555050565b600081600001549050919050565b611d788282604051806020016040528060008152506121e8565b5050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611e28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1f90614008565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611f199190612e79565b60405180910390a3505050565b611f3184848461171d565b611f3d84848484612243565b611f7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f739061409a565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff16611fa483611d7c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061208e57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061209e575061209d826123cb565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061210c5750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61214b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214290614106565b60405180910390fd5b61215784848484612445565b50505050565b50505050565b61216d8282611117565b6121e45761217a816125a5565b6121888360001c60206125d2565b6040516020016121999291906141fa565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121db9190612f2d565b60405180910390fd5b5050565b6121f2838361280e565b6121ff6000848484612243565b61223e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122359061409a565b60405180910390fd5b505050565b60006122648473ffffffffffffffffffffffffffffffffffffffff16612a2c565b156123be578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261228d6115c7565b8786866040518563ffffffff1660e01b81526004016122af9493929190614289565b6020604051808303816000875af19250505080156122eb57506040513d601f19601f820116820180604052508101906122e891906142ea565b60015b61236e573d806000811461231b576040519150601f19603f3d011682016040523d82523d6000602084013e612320565b606091505b50600081511415612366576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235d9061409a565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506123c3565b600190505b949350505050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061243e575061243d82612a4f565b5b9050919050565b61245184848484612ab9565b6001811115612495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248c90614389565b60405180910390fd5b6000829050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156124dd576124d881612abf565b61251c565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461251b5761251a8582612b08565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561255f5761255a81612c75565b61259e565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461259d5761259c8482612d46565b5b5b5050505050565b60606125cb8273ffffffffffffffffffffffffffffffffffffffff16601460ff166125d2565b9050919050565b6060600060028360026125e591906143a9565b6125ef91906139e3565b67ffffffffffffffff81111561260857612607613347565b5b6040519080825280601f01601f19166020018201604052801561263a5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061267257612671613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106126d6576126d5613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261271691906143a9565b61272091906139e3565b90505b60018111156127c0577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061276257612761613aa5565b5b1a60f81b82828151811061277957612778613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806127b990614403565b9050612723565b5060008414612804576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127fb90614479565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561287e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612875906144e5565b60405180910390fd5b61288781611f82565b156128c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128be90614551565b60405180910390fd5b6128d56000838360016120a5565b6128de81611f82565b1561291e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161291590614551565b60405180910390fd5b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612a2860008383600161215d565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b600980549050600a600083815260200190815260200160002081905550600981908060018154018082558091505060019003906000526020600020016000909190919091505550565b60006001612b158461105f565b612b1f9190614571565b9050600060086000848152602001908152602001600020549050818114612c04576000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816008600083815260200190815260200160002081905550505b6008600084815260200190815260200160002060009055600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600980549050612c899190614571565b90506000600a6000848152602001908152602001600020549050600060098381548110612cb957612cb8613aa5565b5b906000526020600020015490508060098381548110612cdb57612cda613aa5565b5b906000526020600020018190555081600a600083815260200190815260200160002081905550600a6000858152602001908152602001600020600090556009805480612d2a57612d296145a5565b5b6001900381819060005260206000200160009055905550505050565b6000612d518361105f565b905081600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806008600084815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612e0e81612dd9565b8114612e1957600080fd5b50565b600081359050612e2b81612e05565b92915050565b600060208284031215612e4757612e46612dcf565b5b6000612e5584828501612e1c565b91505092915050565b60008115159050919050565b612e7381612e5e565b82525050565b6000602082019050612e8e6000830184612e6a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ece578082015181840152602081019050612eb3565b83811115612edd576000848401525b50505050565b6000601f19601f8301169050919050565b6000612eff82612e94565b612f098185612e9f565b9350612f19818560208601612eb0565b612f2281612ee3565b840191505092915050565b60006020820190508181036000830152612f478184612ef4565b905092915050565b6000819050919050565b612f6281612f4f565b8114612f6d57600080fd5b50565b600081359050612f7f81612f59565b92915050565b600060208284031215612f9b57612f9a612dcf565b5b6000612fa984828501612f70565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612fdd82612fb2565b9050919050565b612fed81612fd2565b82525050565b60006020820190506130086000830184612fe4565b92915050565b61301781612fd2565b811461302257600080fd5b50565b6000813590506130348161300e565b92915050565b6000806040838503121561305157613050612dcf565b5b600061305f85828601613025565b925050602061307085828601612f70565b9150509250929050565b61308381612f4f565b82525050565b600060208201905061309e600083018461307a565b92915050565b6000602082840312156130ba576130b9612dcf565b5b60006130c884828501613025565b91505092915050565b6000806000606084860312156130ea576130e9612dcf565b5b60006130f886828701613025565b935050602061310986828701613025565b925050604061311a86828701612f70565b9150509250925092565b6000819050919050565b61313781613124565b811461314257600080fd5b50565b6000813590506131548161312e565b92915050565b6000602082840312156131705761316f612dcf565b5b600061317e84828501613145565b91505092915050565b61319081613124565b82525050565b60006020820190506131ab6000830184613187565b92915050565b600080604083850312156131c8576131c7612dcf565b5b60006131d685828601613145565b92505060206131e785828601613025565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61322681612f4f565b82525050565b6000613238838361321d565b60208301905092915050565b6000602082019050919050565b600061325c826131f1565b61326681856131fc565b93506132718361320d565b8060005b838110156132a2578151613289888261322c565b975061329483613244565b925050600181019050613275565b5085935050505092915050565b600060208201905081810360008301526132c98184613251565b905092915050565b6132da81612e5e565b81146132e557600080fd5b50565b6000813590506132f7816132d1565b92915050565b6000806040838503121561331457613313612dcf565b5b600061332285828601613025565b9250506020613333858286016132e8565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61337f82612ee3565b810181811067ffffffffffffffff8211171561339e5761339d613347565b5b80604052505050565b60006133b1612dc5565b90506133bd8282613376565b919050565b600067ffffffffffffffff8211156133dd576133dc613347565b5b6133e682612ee3565b9050602081019050919050565b82818337600083830152505050565b6000613415613410846133c2565b6133a7565b90508281526020810184848401111561343157613430613342565b5b61343c8482856133f3565b509392505050565b600082601f8301126134595761345861333d565b5b8135613469848260208601613402565b91505092915050565b6000806000806080858703121561348c5761348b612dcf565b5b600061349a87828801613025565b94505060206134ab87828801613025565b93505060406134bc87828801612f70565b925050606085013567ffffffffffffffff8111156134dd576134dc612dd4565b5b6134e987828801613444565b91505092959194509250565b6000806040838503121561350c5761350b612dcf565b5b600061351a85828601613025565b925050602061352b85828601613025565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061357c57607f821691505b602082108114156135905761358f613535565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006135f2602183612e9f565b91506135fd82613596565b604082019050919050565b60006020820190508181036000830152613621816135e5565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000613684603d83612e9f565b915061368f82613628565b604082019050919050565b600060208201905081810360008301526136b381613677565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000613716602d83612e9f565b9150613721826136ba565b604082019050919050565b6000602082019050818103600083015261374581613709565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b60006137a8602b83612e9f565b91506137b38261374c565b604082019050919050565b600060208201905081810360008301526137d78161379b565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b600061383a602f83612e9f565b9150613845826137de565b604082019050919050565b600060208201905081810360008301526138698161382d565b9050919050565b7f43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564600082015250565b60006138a6602083612e9f565b91506138b182613870565b602082019050919050565b600060208201905081810360008301526138d581613899565b9050919050565b7f746f6b656e49647320746f6f20736d616c6c0000000000000000000000000000600082015250565b6000613912601283612e9f565b915061391d826138dc565b602082019050919050565b6000602082019050818103600083015261394181613905565b9050919050565b7f746f6b656e49647320746f6f206d616e79000000000000000000000000000000600082015250565b600061397e601183612e9f565b915061398982613948565b602082019050919050565b600060208201905081810360008301526139ad81613971565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006139ee82612f4f565b91506139f983612f4f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613a2e57613a2d6139b4565b5b828201905092915050565b7f4578636565642074686520746f74616c20737570706c79000000000000000000600082015250565b6000613a6f601783612e9f565b9150613a7a82613a39565b602082019050919050565b60006020820190508181036000830152613a9e81613a62565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000613adf82612f4f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613b1257613b116139b4565b5b600182019050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000613b79602c83612e9f565b9150613b8482613b1d565b604082019050919050565b60006020820190508181036000830152613ba881613b6c565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000613be5601883612e9f565b9150613bf082613baf565b602082019050919050565b60006020820190508181036000830152613c1481613bd8565b9050919050565b7f43616e6e6f74206d696e7420746f207a65726f20616464726573730000000000600082015250565b6000613c51601b83612e9f565b9150613c5c82613c1b565b602082019050919050565b60006020820190508181036000830152613c8081613c44565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000613ce3602983612e9f565b9150613cee82613c87565b604082019050919050565b60006020820190508181036000830152613d1281613cd6565b9050919050565b7f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00600082015250565b6000613d4f601f83612e9f565b9150613d5a82613d19565b602082019050919050565b60006020820190508181036000830152613d7e81613d42565b9050919050565b6000604082019050613d9a6000830185612fe4565b613da7602083018461307a565b9392505050565b600067ffffffffffffffff821115613dc957613dc8613347565b5b613dd282612ee3565b9050602081019050919050565b6000613df2613ded84613dae565b6133a7565b905082815260208101848484011115613e0e57613e0d613342565b5b613e19848285612eb0565b509392505050565b600082601f830112613e3657613e3561333d565b5b8151613e46848260208601613ddf565b91505092915050565b600060208284031215613e6557613e64612dcf565b5b600082015167ffffffffffffffff811115613e8357613e82612dd4565b5b613e8f84828501613e21565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613ef4602583612e9f565b9150613eff82613e98565b604082019050919050565b60006020820190508181036000830152613f2381613ee7565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613f86602483612e9f565b9150613f9182613f2a565b604082019050919050565b60006020820190508181036000830152613fb581613f79565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613ff2601983612e9f565b9150613ffd82613fbc565b602082019050919050565b6000602082019050818103600083015261402181613fe5565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000614084603283612e9f565b915061408f82614028565b604082019050919050565b600060208201905081810360008301526140b381614077565b9050919050565b7f546f6b656e206e6f74207472616e7366657261626c6500000000000000000000600082015250565b60006140f0601683612e9f565b91506140fb826140ba565b602082019050919050565b6000602082019050818103600083015261411f816140e3565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000614167601783614126565b915061417282614131565b601782019050919050565b600061418882612e94565b6141928185614126565b93506141a2818560208601612eb0565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006141e4601183614126565b91506141ef826141ae565b601182019050919050565b60006142058261415a565b9150614211828561417d565b915061421c826141d7565b9150614228828461417d565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b600061425b82614234565b614265818561423f565b9350614275818560208601612eb0565b61427e81612ee3565b840191505092915050565b600060808201905061429e6000830187612fe4565b6142ab6020830186612fe4565b6142b8604083018561307a565b81810360608301526142ca8184614250565b905095945050505050565b6000815190506142e481612e05565b92915050565b600060208284031215614300576142ff612dcf565b5b600061430e848285016142d5565b91505092915050565b7f455243373231456e756d657261626c653a20636f6e736563757469766520747260008201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b6000614373603583612e9f565b915061437e82614317565b604082019050919050565b600060208201905081810360008301526143a281614366565b9050919050565b60006143b482612f4f565b91506143bf83612f4f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156143f8576143f76139b4565b5b828202905092915050565b600061440e82612f4f565b91506000821415614422576144216139b4565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000614463602083612e9f565b915061446e8261442d565b602082019050919050565b6000602082019050818103600083015261449281614456565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006144cf602083612e9f565b91506144da82614499565b602082019050919050565b600060208201905081810360008301526144fe816144c2565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600061453b601c83612e9f565b915061454682614505565b602082019050919050565b6000602082019050818103600083015261456a8161452e565b9050919050565b600061457c82612f4f565b915061458783612f4f565b92508282101561459a576145996139b4565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122034b0f9246c7b958d25ef6f0853b392609f669a56a61c0c365bf88cee139d5ec664736f6c634300080a0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102065760003560e01c80634f6ccce71161011a578063a217fddf116100ad578063b930908f1161007c578063b930908f1461060b578063c87b56dd14610629578063d539139314610659578063d547741f14610677578063e985e9c51461069357610206565b8063a217fddf14610599578063a22cb465146105b7578063b6a6a93d146105d3578063b88d4fde146105ef57610206565b806370a08231116100e957806370a08231146104ff57806391d148541461052f57806395d89b411461055f578063965f4c601461057d57610206565b80634f6ccce714610453578063530dd079146104835780636352211e1461049f5780636a627842146104cf57610206565b8063248a9ca31161019d578063327ba6151161016c578063327ba615146103b357806336568abe146103cf57806342842e0e146103eb57806342966c681461040757806343508b051461042357610206565b8063248a9ca3146103195780632913daa0146103495780632f2ff15d146103675780632f745c591461038357610206565b806318160ddd116101d957806318160ddd146102a557806319d1997a146102c35780631cf4e3ee146102e157806323b872dd146102fd57610206565b806301ffc9a71461020b57806306fdde031461023b578063081812fc14610259578063095ea7b314610289575b600080fd5b61022560048036038101906102209190612e31565b6106c3565b6040516102329190612e79565b60405180910390f35b6102436106d5565b6040516102509190612f2d565b60405180910390f35b610273600480360381019061026e9190612f85565b610767565b6040516102809190612ff3565b60405180910390f35b6102a3600480360381019061029e919061303a565b6107ad565b005b6102ad6108c5565b6040516102ba9190613089565b60405180910390f35b6102cb6108d2565b6040516102d89190613089565b60405180910390f35b6102fb60048036038101906102f691906130a4565b6108f6565b005b610317600480360381019061031291906130d1565b610923565b005b610333600480360381019061032e919061315a565b610983565b6040516103409190613196565b60405180910390f35b6103516109a2565b60405161035e9190613089565b60405180910390f35b610381600480360381019061037c91906131b1565b6109a8565b005b61039d6004803603810190610398919061303a565b6109c9565b6040516103aa9190613089565b60405180910390f35b6103cd60048036038101906103c891906130a4565b610a6e565b005b6103e960048036038101906103e491906131b1565b610a9b565b005b610405600480360381019061040091906130d1565b610b1e565b005b610421600480360381019061041c9190612f85565b610b3e565b005b61043d6004803603810190610438919061303a565b610bc5565b60405161044a91906132af565b60405180910390f35b61046d60048036038101906104689190612f85565b610dd2565b60405161047a9190613089565b60405180910390f35b61049d600480360381019061049891906130a4565b610e43565b005b6104b960048036038101906104b49190612f85565b610e70565b6040516104c69190612ff3565b60405180910390f35b6104e960048036038101906104e491906130a4565b610ef7565b6040516104f69190613089565b60405180910390f35b610519600480360381019061051491906130a4565b61105f565b6040516105269190613089565b60405180910390f35b610549600480360381019061054491906131b1565b611117565b6040516105569190612e79565b60405180910390f35b610567611181565b6040516105749190612f2d565b60405180910390f35b610597600480360381019061059291906130a4565b611213565b005b6105a1611240565b6040516105ae9190613196565b60405180910390f35b6105d160048036038101906105cc91906132fd565b611247565b005b6105ed60048036038101906105e891906130a4565b61125d565b005b61060960048036038101906106049190613472565b6112af565b005b610613611311565b6040516106209190613196565b60405180910390f35b610643600480360381019061063e9190612f85565b611335565b6040516106509190612f2d565b60405180910390f35b610661611429565b60405161066e9190613196565b60405180910390f35b610691600480360381019061068c91906131b1565b61144d565b005b6106ad60048036038101906106a891906134f5565b61146e565b6040516106ba9190612e79565b60405180910390f35b60006106ce82611502565b9050919050565b6060600180546106e490613564565b80601f016020809104026020016040519081016040528092919081815260200182805461071090613564565b801561075d5780601f106107325761010080835404028352916020019161075d565b820191906000526020600020905b81548152906001019060200180831161074057829003601f168201915b5050505050905090565b60006107728261157c565b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006107b882610e70565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610829576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082090613608565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166108486115c7565b73ffffffffffffffffffffffffffffffffffffffff1614806108775750610876816108716115c7565b61146e565b5b6108b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ad9061369a565b60405180910390fd5b6108c083836115cf565b505050565b6000600980549050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6109207f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68261144d565b50565b61093461092e6115c7565b82611688565b610973576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096a9061372c565b60405180910390fd5b61097e83838361171d565b505050565b6000806000838152602001908152602001600020600101549050919050565b600d5481565b6109b182610983565b6109ba81611a17565b6109c48383611a2b565b505050565b60006109d48361105f565b8210610a15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0c906137be565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610a987fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22826109a8565b50565b610aa36115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610b10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b0790613850565b60405180910390fd5b610b1a8282611b0b565b5050565b610b39838383604051806020016040528060008152506112af565b505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22610b6881611a17565b610b79610b736115c7565b83611688565b610bb8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610baf906138bc565b60405180910390fd5b610bc182611bec565b5050565b60607f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610bf181611a17565b60008311610c34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2b90613928565b60405180910390fd5b600d54831115610c79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7090613994565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115610d18577f000000000000000000000000000000000000000000000000000000000000000083610ccc6108c5565b610cd691906139e3565b1115610d17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0e90613a85565b60405180910390fd5b5b60008367ffffffffffffffff811115610d3457610d33613347565b5b604051908082528060200260200182016040528015610d625781602001602082028036833780820191505090505b50905060005b84811015610dc657610d7a600c611d3a565b6000610d86600c611d50565b9050610d928782611d5e565b80838381518110610da657610da5613aa5565b5b602002602001018181525050508080610dbe90613ad4565b915050610d68565b50809250505092915050565b6000610ddc6108c5565b8210610e1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1490613b8f565b60405180910390fd5b60098281548110610e3157610e30613aa5565b5b90600052602060002001549050919050565b610e6d7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6826109a8565b50565b600080610e7c83611d7c565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610eee576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee590613bfb565b60405180910390fd5b80915050919050565b60007f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610f2381611a17565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8a90613c67565b60405180910390fd5b60007f00000000000000000000000000000000000000000000000000000000000000001115611033577f00000000000000000000000000000000000000000000000000000000000000006001610fe76108c5565b610ff191906139e3565b1115611032576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102990613a85565b60405180910390fd5b5b61103d600c611d3a565b6000611049600c611d50565b90506110558482611d5e565b8092505050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c790613cf9565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60606002805461119090613564565b80601f01602080910402602001604051908101604052809291908181526020018280546111bc90613564565b80156112095780601f106111de57610100808354040283529160200191611209565b820191906000526020600020905b8154815290600101906020018083116111ec57829003601f168201915b5050505050905090565b61123d7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa228261144d565b50565b6000801b81565b6112596112526115c7565b8383611db9565b5050565b6000801b61126a81611a17565b81600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6112c06112ba6115c7565b83611688565b6112ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f69061372c565b60405180910390fd5b61130b84848484611f26565b50505050565b7fe97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa2281565b606061134082611f82565b61137f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137690613d65565b60405180910390fd5b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f666196d30846040518363ffffffff1660e01b81526004016113dc929190613d85565b600060405180830381865afa1580156113f9573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906114229190613e4f565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61145682610983565b61145f81611a17565b6114698383611b0b565b505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611575575061157482611fc3565b5b9050919050565b61158581611f82565b6115c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bb90613bfb565b60405180910390fd5b50565b600033905090565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661164283610e70565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60008061169483610e70565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806116d657506116d5818561146e565b5b8061171457508373ffffffffffffffffffffffffffffffffffffffff166116fc84610767565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661173d82610e70565b73ffffffffffffffffffffffffffffffffffffffff1614611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613f0a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fa90613f9c565b60405180910390fd5b61181083838360016120a5565b8273ffffffffffffffffffffffffffffffffffffffff1661183082610e70565b73ffffffffffffffffffffffffffffffffffffffff1614611886576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161187d90613f0a565b60405180910390fd5b6005600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611a12838383600161215d565b505050565b611a2881611a236115c7565b612163565b50565b611a358282611117565b611b0757600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611aac6115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b611b158282611117565b15611be857600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611b8d6115c7565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611bf782610e70565b9050611c078160008460016120a5565b611c1082610e70565b90506005600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611d3681600084600161215d565b5050565b6001816000016000828254019250508190555050565b600081600001549050919050565b611d788282604051806020016040528060008152506121e8565b5050565b60006003600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611e28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1f90614008565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611f199190612e79565b60405180910390a3505050565b611f3184848461171d565b611f3d84848484612243565b611f7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f739061409a565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff16611fa483611d7c565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061208e57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061209e575061209d826123cb565b5b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061210c5750600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b61214b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214290614106565b60405180910390fd5b61215784848484612445565b50505050565b50505050565b61216d8282611117565b6121e45761217a816125a5565b6121888360001c60206125d2565b6040516020016121999291906141fa565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121db9190612f2d565b60405180910390fd5b5050565b6121f2838361280e565b6121ff6000848484612243565b61223e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122359061409a565b60405180910390fd5b505050565b60006122648473ffffffffffffffffffffffffffffffffffffffff16612a2c565b156123be578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261228d6115c7565b8786866040518563ffffffff1660e01b81526004016122af9493929190614289565b6020604051808303816000875af19250505080156122eb57506040513d601f19601f820116820180604052508101906122e891906142ea565b60015b61236e573d806000811461231b576040519150601f19603f3d011682016040523d82523d6000602084013e612320565b606091505b50600081511415612366576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235d9061409a565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506123c3565b600190505b949350505050565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061243e575061243d82612a4f565b5b9050919050565b61245184848484612ab9565b6001811115612495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248c90614389565b60405180910390fd5b6000829050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156124dd576124d881612abf565b61251c565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161461251b5761251a8582612b08565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561255f5761255a81612c75565b61259e565b8473ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161461259d5761259c8482612d46565b5b5b5050505050565b60606125cb8273ffffffffffffffffffffffffffffffffffffffff16601460ff166125d2565b9050919050565b6060600060028360026125e591906143a9565b6125ef91906139e3565b67ffffffffffffffff81111561260857612607613347565b5b6040519080825280601f01601f19166020018201604052801561263a5781602001600182028036833780820191505090505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061267257612671613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f7800000000000000000000000000000000000000000000000000000000000000816001815181106126d6576126d5613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261271691906143a9565b61272091906139e3565b90505b60018111156127c0577f3031323334353637383961626364656600000000000000000000000000000000600f86166010811061276257612761613aa5565b5b1a60f81b82828151811061277957612778613aa5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806127b990614403565b9050612723565b5060008414612804576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127fb90614479565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561287e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612875906144e5565b60405180910390fd5b61288781611f82565b156128c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128be90614551565b60405180910390fd5b6128d56000838360016120a5565b6128de81611f82565b1561291e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161291590614551565b60405180910390fd5b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612a2860008383600161215d565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b600980549050600a600083815260200190815260200160002081905550600981908060018154018082558091505060019003906000526020600020016000909190919091505550565b60006001612b158461105f565b612b1f9190614571565b9050600060086000848152602001908152602001600020549050818114612c04576000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816008600083815260200190815260200160002081905550505b6008600084815260200190815260200160002060009055600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600980549050612c899190614571565b90506000600a6000848152602001908152602001600020549050600060098381548110612cb957612cb8613aa5565b5b906000526020600020015490508060098381548110612cdb57612cda613aa5565b5b906000526020600020018190555081600a600083815260200190815260200160002081905550600a6000858152602001908152602001600020600090556009805480612d2a57612d296145a5565b5b6001900381819060005260206000200160009055905550505050565b6000612d518361105f565b905081600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806008600084815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612e0e81612dd9565b8114612e1957600080fd5b50565b600081359050612e2b81612e05565b92915050565b600060208284031215612e4757612e46612dcf565b5b6000612e5584828501612e1c565b91505092915050565b60008115159050919050565b612e7381612e5e565b82525050565b6000602082019050612e8e6000830184612e6a565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ece578082015181840152602081019050612eb3565b83811115612edd576000848401525b50505050565b6000601f19601f8301169050919050565b6000612eff82612e94565b612f098185612e9f565b9350612f19818560208601612eb0565b612f2281612ee3565b840191505092915050565b60006020820190508181036000830152612f478184612ef4565b905092915050565b6000819050919050565b612f6281612f4f565b8114612f6d57600080fd5b50565b600081359050612f7f81612f59565b92915050565b600060208284031215612f9b57612f9a612dcf565b5b6000612fa984828501612f70565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612fdd82612fb2565b9050919050565b612fed81612fd2565b82525050565b60006020820190506130086000830184612fe4565b92915050565b61301781612fd2565b811461302257600080fd5b50565b6000813590506130348161300e565b92915050565b6000806040838503121561305157613050612dcf565b5b600061305f85828601613025565b925050602061307085828601612f70565b9150509250929050565b61308381612f4f565b82525050565b600060208201905061309e600083018461307a565b92915050565b6000602082840312156130ba576130b9612dcf565b5b60006130c884828501613025565b91505092915050565b6000806000606084860312156130ea576130e9612dcf565b5b60006130f886828701613025565b935050602061310986828701613025565b925050604061311a86828701612f70565b9150509250925092565b6000819050919050565b61313781613124565b811461314257600080fd5b50565b6000813590506131548161312e565b92915050565b6000602082840312156131705761316f612dcf565b5b600061317e84828501613145565b91505092915050565b61319081613124565b82525050565b60006020820190506131ab6000830184613187565b92915050565b600080604083850312156131c8576131c7612dcf565b5b60006131d685828601613145565b92505060206131e785828601613025565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61322681612f4f565b82525050565b6000613238838361321d565b60208301905092915050565b6000602082019050919050565b600061325c826131f1565b61326681856131fc565b93506132718361320d565b8060005b838110156132a2578151613289888261322c565b975061329483613244565b925050600181019050613275565b5085935050505092915050565b600060208201905081810360008301526132c98184613251565b905092915050565b6132da81612e5e565b81146132e557600080fd5b50565b6000813590506132f7816132d1565b92915050565b6000806040838503121561331457613313612dcf565b5b600061332285828601613025565b9250506020613333858286016132e8565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61337f82612ee3565b810181811067ffffffffffffffff8211171561339e5761339d613347565b5b80604052505050565b60006133b1612dc5565b90506133bd8282613376565b919050565b600067ffffffffffffffff8211156133dd576133dc613347565b5b6133e682612ee3565b9050602081019050919050565b82818337600083830152505050565b6000613415613410846133c2565b6133a7565b90508281526020810184848401111561343157613430613342565b5b61343c8482856133f3565b509392505050565b600082601f8301126134595761345861333d565b5b8135613469848260208601613402565b91505092915050565b6000806000806080858703121561348c5761348b612dcf565b5b600061349a87828801613025565b94505060206134ab87828801613025565b93505060406134bc87828801612f70565b925050606085013567ffffffffffffffff8111156134dd576134dc612dd4565b5b6134e987828801613444565b91505092959194509250565b6000806040838503121561350c5761350b612dcf565b5b600061351a85828601613025565b925050602061352b85828601613025565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061357c57607f821691505b602082108114156135905761358f613535565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006135f2602183612e9f565b91506135fd82613596565b604082019050919050565b60006020820190508181036000830152613621816135e5565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000613684603d83612e9f565b915061368f82613628565b604082019050919050565b600060208201905081810360008301526136b381613677565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b6000613716602d83612e9f565b9150613721826136ba565b604082019050919050565b6000602082019050818103600083015261374581613709565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b60006137a8602b83612e9f565b91506137b38261374c565b604082019050919050565b600060208201905081810360008301526137d78161379b565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b600061383a602f83612e9f565b9150613845826137de565b604082019050919050565b600060208201905081810360008301526138698161382d565b9050919050565b7f43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564600082015250565b60006138a6602083612e9f565b91506138b182613870565b602082019050919050565b600060208201905081810360008301526138d581613899565b9050919050565b7f746f6b656e49647320746f6f20736d616c6c0000000000000000000000000000600082015250565b6000613912601283612e9f565b915061391d826138dc565b602082019050919050565b6000602082019050818103600083015261394181613905565b9050919050565b7f746f6b656e49647320746f6f206d616e79000000000000000000000000000000600082015250565b600061397e601183612e9f565b915061398982613948565b602082019050919050565b600060208201905081810360008301526139ad81613971565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006139ee82612f4f565b91506139f983612f4f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115613a2e57613a2d6139b4565b5b828201905092915050565b7f4578636565642074686520746f74616c20737570706c79000000000000000000600082015250565b6000613a6f601783612e9f565b9150613a7a82613a39565b602082019050919050565b60006020820190508181036000830152613a9e81613a62565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000613adf82612f4f565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613b1257613b116139b4565b5b600182019050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000613b79602c83612e9f565b9150613b8482613b1d565b604082019050919050565b60006020820190508181036000830152613ba881613b6c565b9050919050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000613be5601883612e9f565b9150613bf082613baf565b602082019050919050565b60006020820190508181036000830152613c1481613bd8565b9050919050565b7f43616e6e6f74206d696e7420746f207a65726f20616464726573730000000000600082015250565b6000613c51601b83612e9f565b9150613c5c82613c1b565b602082019050919050565b60006020820190508181036000830152613c8081613c44565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000613ce3602983612e9f565b9150613cee82613c87565b604082019050919050565b60006020820190508181036000830152613d1281613cd6565b9050919050565b7f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00600082015250565b6000613d4f601f83612e9f565b9150613d5a82613d19565b602082019050919050565b60006020820190508181036000830152613d7e81613d42565b9050919050565b6000604082019050613d9a6000830185612fe4565b613da7602083018461307a565b9392505050565b600067ffffffffffffffff821115613dc957613dc8613347565b5b613dd282612ee3565b9050602081019050919050565b6000613df2613ded84613dae565b6133a7565b905082815260208101848484011115613e0e57613e0d613342565b5b613e19848285612eb0565b509392505050565b600082601f830112613e3657613e3561333d565b5b8151613e46848260208601613ddf565b91505092915050565b600060208284031215613e6557613e64612dcf565b5b600082015167ffffffffffffffff811115613e8357613e82612dd4565b5b613e8f84828501613e21565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000613ef4602583612e9f565b9150613eff82613e98565b604082019050919050565b60006020820190508181036000830152613f2381613ee7565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613f86602483612e9f565b9150613f9182613f2a565b604082019050919050565b60006020820190508181036000830152613fb581613f79565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000613ff2601983612e9f565b9150613ffd82613fbc565b602082019050919050565b6000602082019050818103600083015261402181613fe5565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000614084603283612e9f565b915061408f82614028565b604082019050919050565b600060208201905081810360008301526140b381614077565b9050919050565b7f546f6b656e206e6f74207472616e7366657261626c6500000000000000000000600082015250565b60006140f0601683612e9f565b91506140fb826140ba565b602082019050919050565b6000602082019050818103600083015261411f816140e3565b9050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000614167601783614126565b915061417282614131565b601782019050919050565b600061418882612e94565b6141928185614126565b93506141a2818560208601612eb0565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006141e4601183614126565b91506141ef826141ae565b601182019050919050565b60006142058261415a565b9150614211828561417d565b915061421c826141d7565b9150614228828461417d565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b600061425b82614234565b614265818561423f565b9350614275818560208601612eb0565b61427e81612ee3565b840191505092915050565b600060808201905061429e6000830187612fe4565b6142ab6020830186612fe4565b6142b8604083018561307a565b81810360608301526142ca8184614250565b905095945050505050565b6000815190506142e481612e05565b92915050565b600060208284031215614300576142ff612dcf565b5b600061430e848285016142d5565b91505092915050565b7f455243373231456e756d657261626c653a20636f6e736563757469766520747260008201527f616e7366657273206e6f7420737570706f727465640000000000000000000000602082015250565b6000614373603583612e9f565b915061437e82614317565b604082019050919050565b600060208201905081810360008301526143a281614366565b9050919050565b60006143b482612f4f565b91506143bf83612f4f565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156143f8576143f76139b4565b5b828202905092915050565b600061440e82612f4f565b91506000821415614422576144216139b4565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000614463602083612e9f565b915061446e8261442d565b602082019050919050565b6000602082019050818103600083015261449281614456565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006144cf602083612e9f565b91506144da82614499565b602082019050919050565b600060208201905081810360008301526144fe816144c2565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600061453b601c83612e9f565b915061454682614505565b602082019050919050565b6000602082019050818103600083015261456a8161452e565b9050919050565b600061457c82612f4f565b915061458783612f4f565b92508282101561459a576145996139b4565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122034b0f9246c7b958d25ef6f0853b392609f669a56a61c0c365bf88cee139d5ec664736f6c634300080a0033", "immutableReferences": { - "18470": [ + "3563": [ { "length": 32, - "start": 2160 + "start": 2260 }, { "length": 32, - "start": 3360 + "start": 3197 }, { "length": 32, - "start": 3399 + "start": 3236 + }, + { + "length": 32, + "start": 3991 + }, + { + "length": 32, + "start": 4030 } ] }, @@ -753,22 +798,22 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:4609:77", + "src": "0:4609:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "47:35:77", + "src": "47:35:18", "statements": [ { "nodeType": "YulAssignment", - "src": "57:19:77", + "src": "57:19:18", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "73:2:77", + "src": "73:2:18", "type": "", "value": "64" } @@ -776,16 +821,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "67:5:77" + "src": "67:5:18" }, "nodeType": "YulFunctionCall", - "src": "67:9:77" + "src": "67:9:18" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "57:6:77" + "src": "57:6:18" } ] } @@ -797,16 +842,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40:6:77", + "src": "40:6:18", "type": "" } ], - "src": "7:75:77" + "src": "7:75:18" }, { "body": { "nodeType": "YulBlock", - "src": "177:28:77", + "src": "177:28:18", "statements": [ { "expression": { @@ -814,14 +859,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "194:1:77", + "src": "194:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "197:1:77", + "src": "197:1:18", "type": "", "value": "0" } @@ -829,24 +874,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "187:6:77" + "src": "187:6:18" }, "nodeType": "YulFunctionCall", - "src": "187:12:77" + "src": "187:12:18" }, "nodeType": "YulExpressionStatement", - "src": "187:12:77" + "src": "187:12:18" } ] }, "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulFunctionDefinition", - "src": "88:117:77" + "src": "88:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "300:28:77", + "src": "300:28:18", "statements": [ { "expression": { @@ -854,14 +899,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "317:1:77", + "src": "317:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "320:1:77", + "src": "320:1:18", "type": "", "value": "0" } @@ -869,24 +914,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "310:6:77" + "src": "310:6:18" }, "nodeType": "YulFunctionCall", - "src": "310:12:77" + "src": "310:12:18" }, "nodeType": "YulExpressionStatement", - "src": "310:12:77" + "src": "310:12:18" } ] }, "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulFunctionDefinition", - "src": "211:117:77" + "src": "211:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "423:28:77", + "src": "423:28:18", "statements": [ { "expression": { @@ -894,14 +939,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "440:1:77", + "src": "440:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "443:1:77", + "src": "443:1:18", "type": "", "value": "0" } @@ -909,24 +954,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "433:6:77" + "src": "433:6:18" }, "nodeType": "YulFunctionCall", - "src": "433:12:77" + "src": "433:12:18" }, "nodeType": "YulExpressionStatement", - "src": "433:12:77" + "src": "433:12:18" } ] }, "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulFunctionDefinition", - "src": "334:117:77" + "src": "334:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "546:28:77", + "src": "546:28:18", "statements": [ { "expression": { @@ -934,14 +979,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "563:1:77", + "src": "563:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "566:1:77", + "src": "566:1:18", "type": "", "value": "0" } @@ -949,28 +994,28 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "556:6:77" + "src": "556:6:18" }, "nodeType": "YulFunctionCall", - "src": "556:12:77" + "src": "556:12:18" }, "nodeType": "YulExpressionStatement", - "src": "556:12:77" + "src": "556:12:18" } ] }, "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulFunctionDefinition", - "src": "457:117:77" + "src": "457:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "628:54:77", + "src": "628:54:18", "statements": [ { "nodeType": "YulAssignment", - "src": "638:38:77", + "src": "638:38:18", "value": { "arguments": [ { @@ -978,12 +1023,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "656:5:77" + "src": "656:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "663:2:77", + "src": "663:2:18", "type": "", "value": "31" } @@ -991,17 +1036,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "652:3:77" + "src": "652:3:18" }, "nodeType": "YulFunctionCall", - "src": "652:14:77" + "src": "652:14:18" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "672:2:77", + "src": "672:2:18", "type": "", "value": "31" } @@ -1009,25 +1054,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "668:3:77" + "src": "668:3:18" }, "nodeType": "YulFunctionCall", - "src": "668:7:77" + "src": "668:7:18" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "648:3:77" + "src": "648:3:18" }, "nodeType": "YulFunctionCall", - "src": "648:28:77" + "src": "648:28:18" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "638:6:77" + "src": "638:6:18" } ] } @@ -1039,7 +1084,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "611:5:77", + "src": "611:5:18", "type": "" } ], @@ -1047,16 +1092,16 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "621:6:77", + "src": "621:6:18", "type": "" } ], - "src": "580:102:77" + "src": "580:102:18" }, { "body": { "nodeType": "YulBlock", - "src": "716:152:77", + "src": "716:152:18", "statements": [ { "expression": { @@ -1064,14 +1109,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "733:1:77", + "src": "733:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "736:77:77", + "src": "736:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -1079,13 +1124,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "726:6:77" + "src": "726:6:18" }, "nodeType": "YulFunctionCall", - "src": "726:88:77" + "src": "726:88:18" }, "nodeType": "YulExpressionStatement", - "src": "726:88:77" + "src": "726:88:18" }, { "expression": { @@ -1093,14 +1138,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "830:1:77", + "src": "830:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "833:4:77", + "src": "833:4:18", "type": "", "value": "0x41" } @@ -1108,13 +1153,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "823:6:77" + "src": "823:6:18" }, "nodeType": "YulFunctionCall", - "src": "823:15:77" + "src": "823:15:18" }, "nodeType": "YulExpressionStatement", - "src": "823:15:77" + "src": "823:15:18" }, { "expression": { @@ -1122,14 +1167,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "854:1:77", + "src": "854:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "857:4:77", + "src": "857:4:18", "type": "", "value": "0x24" } @@ -1137,65 +1182,65 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "847:6:77" + "src": "847:6:18" }, "nodeType": "YulFunctionCall", - "src": "847:15:77" + "src": "847:15:18" }, "nodeType": "YulExpressionStatement", - "src": "847:15:77" + "src": "847:15:18" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "688:180:77" + "src": "688:180:18" }, { "body": { "nodeType": "YulBlock", - "src": "917:238:77", + "src": "917:238:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "927:58:77", + "src": "927:58:18", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "949:6:77" + "src": "949:6:18" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "979:4:77" + "src": "979:4:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "957:21:77" + "src": "957:21:18" }, "nodeType": "YulFunctionCall", - "src": "957:27:77" + "src": "957:27:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "945:3:77" + "src": "945:3:18" }, "nodeType": "YulFunctionCall", - "src": "945:40:77" + "src": "945:40:18" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "931:10:77", + "src": "931:10:18", "type": "" } ] @@ -1203,7 +1248,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1096:22:77", + "src": "1096:22:18", "statements": [ { "expression": { @@ -1211,13 +1256,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "1098:16:77" + "src": "1098:16:18" }, "nodeType": "YulFunctionCall", - "src": "1098:18:77" + "src": "1098:18:18" }, "nodeType": "YulExpressionStatement", - "src": "1098:18:77" + "src": "1098:18:18" } ] }, @@ -1228,12 +1273,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1039:10:77" + "src": "1039:10:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1051:18:77", + "src": "1051:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -1241,43 +1286,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1036:2:77" + "src": "1036:2:18" }, "nodeType": "YulFunctionCall", - "src": "1036:34:77" + "src": "1036:34:18" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1075:10:77" + "src": "1075:10:18" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1087:6:77" + "src": "1087:6:18" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "1072:2:77" + "src": "1072:2:18" }, "nodeType": "YulFunctionCall", - "src": "1072:22:77" + "src": "1072:22:18" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "1033:2:77" + "src": "1033:2:18" }, "nodeType": "YulFunctionCall", - "src": "1033:62:77" + "src": "1033:62:18" }, "nodeType": "YulIf", - "src": "1030:88:77" + "src": "1030:88:18" }, { "expression": { @@ -1285,26 +1330,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "1134:2:77", + "src": "1134:2:18", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "1138:10:77" + "src": "1138:10:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1127:6:77" + "src": "1127:6:18" }, "nodeType": "YulFunctionCall", - "src": "1127:22:77" + "src": "1127:22:18" }, "nodeType": "YulExpressionStatement", - "src": "1127:22:77" + "src": "1127:22:18" } ] }, @@ -1314,41 +1359,41 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "903:6:77", + "src": "903:6:18", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "911:4:77", + "src": "911:4:18", "type": "" } ], - "src": "874:281:77" + "src": "874:281:18" }, { "body": { "nodeType": "YulBlock", - "src": "1202:88:77", + "src": "1202:88:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1212:30:77", + "src": "1212:30:18", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "1222:18:77" + "src": "1222:18:18" }, "nodeType": "YulFunctionCall", - "src": "1222:20:77" + "src": "1222:20:18" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1212:6:77" + "src": "1212:6:18" } ] }, @@ -1358,24 +1403,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "1271:6:77" + "src": "1271:6:18" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "1279:4:77" + "src": "1279:4:18" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "1251:19:77" + "src": "1251:19:18" }, "nodeType": "YulFunctionCall", - "src": "1251:33:77" + "src": "1251:33:18" }, "nodeType": "YulExpressionStatement", - "src": "1251:33:77" + "src": "1251:33:18" } ] }, @@ -1385,7 +1430,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "1186:4:77", + "src": "1186:4:18", "type": "" } ], @@ -1393,21 +1438,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "1195:6:77", + "src": "1195:6:18", "type": "" } ], - "src": "1161:129:77" + "src": "1161:129:18" }, { "body": { "nodeType": "YulBlock", - "src": "1363:241:77", + "src": "1363:241:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "1468:22:77", + "src": "1468:22:18", "statements": [ { "expression": { @@ -1415,13 +1460,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "1470:16:77" + "src": "1470:16:18" }, "nodeType": "YulFunctionCall", - "src": "1470:18:77" + "src": "1470:18:18" }, "nodeType": "YulExpressionStatement", - "src": "1470:18:77" + "src": "1470:18:18" } ] }, @@ -1430,12 +1475,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "1440:6:77" + "src": "1440:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1448:18:77", + "src": "1448:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -1443,55 +1488,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1437:2:77" + "src": "1437:2:18" }, "nodeType": "YulFunctionCall", - "src": "1437:30:77" + "src": "1437:30:18" }, "nodeType": "YulIf", - "src": "1434:56:77" + "src": "1434:56:18" }, { "nodeType": "YulAssignment", - "src": "1500:37:77", + "src": "1500:37:18", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "1530:6:77" + "src": "1530:6:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "1508:21:77" + "src": "1508:21:18" }, "nodeType": "YulFunctionCall", - "src": "1508:29:77" + "src": "1508:29:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1500:4:77" + "src": "1500:4:18" } ] }, { "nodeType": "YulAssignment", - "src": "1574:23:77", + "src": "1574:23:18", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1586:4:77" + "src": "1586:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1592:4:77", + "src": "1592:4:18", "type": "", "value": "0x20" } @@ -1499,16 +1544,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1582:3:77" + "src": "1582:3:18" }, "nodeType": "YulFunctionCall", - "src": "1582:15:77" + "src": "1582:15:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "1574:4:77" + "src": "1574:4:18" } ] } @@ -1520,7 +1565,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "1347:6:77", + "src": "1347:6:18", "type": "" } ], @@ -1528,24 +1573,24 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "1358:4:77", + "src": "1358:4:18", "type": "" } ], - "src": "1296:308:77" + "src": "1296:308:18" }, { "body": { "nodeType": "YulBlock", - "src": "1659:258:77", + "src": "1659:258:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "1669:10:77", + "src": "1669:10:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "1678:1:77", + "src": "1678:1:18", "type": "", "value": "0" }, @@ -1553,7 +1598,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "1673:1:77", + "src": "1673:1:18", "type": "" } ] @@ -1561,7 +1606,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1738:63:77", + "src": "1738:63:18", "statements": [ { "expression": { @@ -1571,21 +1616,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "1763:3:77" + "src": "1763:3:18" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1768:1:77" + "src": "1768:1:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1759:3:77" + "src": "1759:3:18" }, "nodeType": "YulFunctionCall", - "src": "1759:11:77" + "src": "1759:11:18" }, { "arguments": [ @@ -1594,42 +1639,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "1782:3:77" + "src": "1782:3:18" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1787:1:77" + "src": "1787:1:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1778:3:77" + "src": "1778:3:18" }, "nodeType": "YulFunctionCall", - "src": "1778:11:77" + "src": "1778:11:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "1772:5:77" + "src": "1772:5:18" }, "nodeType": "YulFunctionCall", - "src": "1772:18:77" + "src": "1772:18:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1752:6:77" + "src": "1752:6:18" }, "nodeType": "YulFunctionCall", - "src": "1752:39:77" + "src": "1752:39:18" }, "nodeType": "YulExpressionStatement", - "src": "1752:39:77" + "src": "1752:39:18" } ] }, @@ -1638,41 +1683,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "1699:1:77" + "src": "1699:1:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1702:6:77" + "src": "1702:6:18" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "1696:2:77" + "src": "1696:2:18" }, "nodeType": "YulFunctionCall", - "src": "1696:13:77" + "src": "1696:13:18" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "1710:19:77", + "src": "1710:19:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1712:15:77", + "src": "1712:15:18", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1721:1:77" + "src": "1721:1:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1724:2:77", + "src": "1724:2:18", "type": "", "value": "32" } @@ -1680,16 +1725,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1717:3:77" + "src": "1717:3:18" }, "nodeType": "YulFunctionCall", - "src": "1717:10:77" + "src": "1717:10:18" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1712:1:77" + "src": "1712:1:18" } ] } @@ -1697,15 +1742,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "1692:3:77", + "src": "1692:3:18", "statements": [] }, - "src": "1688:113:77" + "src": "1688:113:18" }, { "body": { "nodeType": "YulBlock", - "src": "1835:76:77", + "src": "1835:76:18", "statements": [ { "expression": { @@ -1715,26 +1760,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "1885:3:77" + "src": "1885:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1890:6:77" + "src": "1890:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1881:3:77" + "src": "1881:3:18" }, "nodeType": "YulFunctionCall", - "src": "1881:16:77" + "src": "1881:16:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1899:1:77", + "src": "1899:1:18", "type": "", "value": "0" } @@ -1742,13 +1787,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1874:6:77" + "src": "1874:6:18" }, "nodeType": "YulFunctionCall", - "src": "1874:27:77" + "src": "1874:27:18" }, "nodeType": "YulExpressionStatement", - "src": "1874:27:77" + "src": "1874:27:18" } ] }, @@ -1757,24 +1802,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "1816:1:77" + "src": "1816:1:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1819:6:77" + "src": "1819:6:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "1813:2:77" + "src": "1813:2:18" }, "nodeType": "YulFunctionCall", - "src": "1813:13:77" + "src": "1813:13:18" }, "nodeType": "YulIf", - "src": "1810:101:77" + "src": "1810:101:18" } ] }, @@ -1784,32 +1829,32 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "1641:3:77", + "src": "1641:3:18", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "1646:3:77", + "src": "1646:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1651:6:77", + "src": "1651:6:18", "type": "" } ], - "src": "1610:307:77" + "src": "1610:307:18" }, { "body": { "nodeType": "YulBlock", - "src": "2018:326:77", + "src": "2018:326:18", "statements": [ { "nodeType": "YulAssignment", - "src": "2028:75:77", + "src": "2028:75:18", "value": { "arguments": [ { @@ -1817,31 +1862,31 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "2095:6:77" + "src": "2095:6:18" } ], "functionName": { "name": "array_allocation_size_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "2053:41:77" + "src": "2053:41:18" }, "nodeType": "YulFunctionCall", - "src": "2053:49:77" + "src": "2053:49:18" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "2037:15:77" + "src": "2037:15:18" }, "nodeType": "YulFunctionCall", - "src": "2037:66:77" + "src": "2037:66:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "2028:5:77" + "src": "2028:5:18" } ] }, @@ -1851,39 +1896,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "2119:5:77" + "src": "2119:5:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2126:6:77" + "src": "2126:6:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2112:6:77" + "src": "2112:6:18" }, "nodeType": "YulFunctionCall", - "src": "2112:21:77" + "src": "2112:21:18" }, "nodeType": "YulExpressionStatement", - "src": "2112:21:77" + "src": "2112:21:18" }, { "nodeType": "YulVariableDeclaration", - "src": "2142:27:77", + "src": "2142:27:18", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "2157:5:77" + "src": "2157:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2164:4:77", + "src": "2164:4:18", "type": "", "value": "0x20" } @@ -1891,16 +1936,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2153:3:77" + "src": "2153:3:18" }, "nodeType": "YulFunctionCall", - "src": "2153:16:77" + "src": "2153:16:18" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "2146:3:77", + "src": "2146:3:18", "type": "" } ] @@ -1908,7 +1953,7 @@ { "body": { "nodeType": "YulBlock", - "src": "2207:83:77", + "src": "2207:83:18", "statements": [ { "expression": { @@ -1916,13 +1961,13 @@ "functionName": { "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulIdentifier", - "src": "2209:77:77" + "src": "2209:77:18" }, "nodeType": "YulFunctionCall", - "src": "2209:79:77" + "src": "2209:79:18" }, "nodeType": "YulExpressionStatement", - "src": "2209:79:77" + "src": "2209:79:18" } ] }, @@ -1933,38 +1978,38 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "2188:3:77" + "src": "2188:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2193:6:77" + "src": "2193:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2184:3:77" + "src": "2184:3:18" }, "nodeType": "YulFunctionCall", - "src": "2184:16:77" + "src": "2184:16:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "2202:3:77" + "src": "2202:3:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "2181:2:77" + "src": "2181:2:18" }, "nodeType": "YulFunctionCall", - "src": "2181:25:77" + "src": "2181:25:18" }, "nodeType": "YulIf", - "src": "2178:112:77" + "src": "2178:112:18" }, { "expression": { @@ -1972,29 +2017,29 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "2321:3:77" + "src": "2321:3:18" }, { "name": "dst", "nodeType": "YulIdentifier", - "src": "2326:3:77" + "src": "2326:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2331:6:77" + "src": "2331:6:18" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "2299:21:77" + "src": "2299:21:18" }, "nodeType": "YulFunctionCall", - "src": "2299:39:77" + "src": "2299:39:18" }, "nodeType": "YulExpressionStatement", - "src": "2299:39:77" + "src": "2299:39:18" } ] }, @@ -2004,19 +2049,19 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "1991:3:77", + "src": "1991:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1996:6:77", + "src": "1996:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "2004:3:77", + "src": "2004:3:18", "type": "" } ], @@ -2024,21 +2069,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "2012:5:77", + "src": "2012:5:18", "type": "" } ], - "src": "1923:421:77" + "src": "1923:421:18" }, { "body": { "nodeType": "YulBlock", - "src": "2437:282:77", + "src": "2437:282:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "2486:83:77", + "src": "2486:83:18", "statements": [ { "expression": { @@ -2046,13 +2091,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "2488:77:77" + "src": "2488:77:18" }, "nodeType": "YulFunctionCall", - "src": "2488:79:77" + "src": "2488:79:18" }, "nodeType": "YulExpressionStatement", - "src": "2488:79:77" + "src": "2488:79:18" } ] }, @@ -2065,12 +2110,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "2465:6:77" + "src": "2465:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2473:4:77", + "src": "2473:4:18", "type": "", "value": "0x1f" } @@ -2078,68 +2123,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2461:3:77" + "src": "2461:3:18" }, "nodeType": "YulFunctionCall", - "src": "2461:17:77" + "src": "2461:17:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "2480:3:77" + "src": "2480:3:18" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "2457:3:77" + "src": "2457:3:18" }, "nodeType": "YulFunctionCall", - "src": "2457:27:77" + "src": "2457:27:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "2450:6:77" + "src": "2450:6:18" }, "nodeType": "YulFunctionCall", - "src": "2450:35:77" + "src": "2450:35:18" }, "nodeType": "YulIf", - "src": "2447:122:77" + "src": "2447:122:18" }, { "nodeType": "YulVariableDeclaration", - "src": "2578:27:77", + "src": "2578:27:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "2598:6:77" + "src": "2598:6:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "2592:5:77" + "src": "2592:5:18" }, "nodeType": "YulFunctionCall", - "src": "2592:13:77" + "src": "2592:13:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "2582:6:77", + "src": "2582:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "2614:99:77", + "src": "2614:99:18", "value": { "arguments": [ { @@ -2147,12 +2192,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "2686:6:77" + "src": "2686:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2694:4:77", + "src": "2694:4:18", "type": "", "value": "0x20" } @@ -2160,35 +2205,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2682:3:77" + "src": "2682:3:18" }, "nodeType": "YulFunctionCall", - "src": "2682:17:77" + "src": "2682:17:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2701:6:77" + "src": "2701:6:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "2709:3:77" + "src": "2709:3:18" } ], "functionName": { "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "2623:58:77" + "src": "2623:58:18" }, "nodeType": "YulFunctionCall", - "src": "2623:90:77" + "src": "2623:90:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "2614:5:77" + "src": "2614:5:18" } ] } @@ -2200,13 +2245,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "2415:6:77", + "src": "2415:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "2423:3:77", + "src": "2423:3:18", "type": "" } ], @@ -2214,30 +2259,30 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "2431:5:77", + "src": "2431:5:18", "type": "" } ], - "src": "2364:355:77" + "src": "2364:355:18" }, { "body": { "nodeType": "YulBlock", - "src": "2770:32:77", + "src": "2770:32:18", "statements": [ { "nodeType": "YulAssignment", - "src": "2780:16:77", + "src": "2780:16:18", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "2791:5:77" + "src": "2791:5:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "2780:7:77" + "src": "2780:7:18" } ] } @@ -2249,7 +2294,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2752:5:77", + "src": "2752:5:18", "type": "" } ], @@ -2257,21 +2302,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "2762:7:77", + "src": "2762:7:18", "type": "" } ], - "src": "2725:77:77" + "src": "2725:77:18" }, { "body": { "nodeType": "YulBlock", - "src": "2851:79:77", + "src": "2851:79:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "2908:16:77", + "src": "2908:16:18", "statements": [ { "expression": { @@ -2279,14 +2324,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "2917:1:77", + "src": "2917:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2920:1:77", + "src": "2920:1:18", "type": "", "value": "0" } @@ -2294,13 +2339,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "2910:6:77" + "src": "2910:6:18" }, "nodeType": "YulFunctionCall", - "src": "2910:12:77" + "src": "2910:12:18" }, "nodeType": "YulExpressionStatement", - "src": "2910:12:77" + "src": "2910:12:18" } ] }, @@ -2311,44 +2356,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2874:5:77" + "src": "2874:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "2899:5:77" + "src": "2899:5:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "2881:17:77" + "src": "2881:17:18" }, "nodeType": "YulFunctionCall", - "src": "2881:24:77" + "src": "2881:24:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "2871:2:77" + "src": "2871:2:18" }, "nodeType": "YulFunctionCall", - "src": "2871:35:77" + "src": "2871:35:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "2864:6:77" + "src": "2864:6:18" }, "nodeType": "YulFunctionCall", - "src": "2864:43:77" + "src": "2864:43:18" }, "nodeType": "YulIf", - "src": "2861:63:77" + "src": "2861:63:18" } ] }, @@ -2358,41 +2403,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2844:5:77", + "src": "2844:5:18", "type": "" } ], - "src": "2808:122:77" + "src": "2808:122:18" }, { "body": { "nodeType": "YulBlock", - "src": "2999:80:77", + "src": "2999:80:18", "statements": [ { "nodeType": "YulAssignment", - "src": "3009:22:77", + "src": "3009:22:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3024:6:77" + "src": "3024:6:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3018:5:77" + "src": "3018:5:18" }, "nodeType": "YulFunctionCall", - "src": "3018:13:77" + "src": "3018:13:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3009:5:77" + "src": "3009:5:18" } ] }, @@ -2402,19 +2447,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "3067:5:77" + "src": "3067:5:18" } ], "functionName": { "name": "validator_revert_t_uint256", "nodeType": "YulIdentifier", - "src": "3040:26:77" + "src": "3040:26:18" }, "nodeType": "YulFunctionCall", - "src": "3040:33:77" + "src": "3040:33:18" }, "nodeType": "YulExpressionStatement", - "src": "3040:33:77" + "src": "3040:33:18" } ] }, @@ -2424,13 +2469,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "2977:6:77", + "src": "2977:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "2985:3:77", + "src": "2985:3:18", "type": "" } ], @@ -2438,21 +2483,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2993:5:77", + "src": "2993:5:18", "type": "" } ], - "src": "2936:143:77" + "src": "2936:143:18" }, { "body": { "nodeType": "YulBlock", - "src": "3216:878:77", + "src": "3216:878:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3262:83:77", + "src": "3262:83:18", "statements": [ { "expression": { @@ -2460,13 +2505,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "3264:77:77" + "src": "3264:77:18" }, "nodeType": "YulFunctionCall", - "src": "3264:79:77" + "src": "3264:79:18" }, "nodeType": "YulExpressionStatement", - "src": "3264:79:77" + "src": "3264:79:18" } ] }, @@ -2477,26 +2522,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3237:7:77" + "src": "3237:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3246:9:77" + "src": "3246:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3233:3:77" + "src": "3233:3:18" }, "nodeType": "YulFunctionCall", - "src": "3233:23:77" + "src": "3233:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3258:2:77", + "src": "3258:2:18", "type": "", "value": "96" } @@ -2504,21 +2549,21 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3229:3:77" + "src": "3229:3:18" }, "nodeType": "YulFunctionCall", - "src": "3229:32:77" + "src": "3229:32:18" }, "nodeType": "YulIf", - "src": "3226:119:77" + "src": "3226:119:18" }, { "nodeType": "YulBlock", - "src": "3355:291:77", + "src": "3355:291:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3370:38:77", + "src": "3370:38:18", "value": { "arguments": [ { @@ -2526,12 +2571,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3394:9:77" + "src": "3394:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3405:1:77", + "src": "3405:1:18", "type": "", "value": "0" } @@ -2539,25 +2584,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3390:3:77" + "src": "3390:3:18" }, "nodeType": "YulFunctionCall", - "src": "3390:17:77" + "src": "3390:17:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3384:5:77" + "src": "3384:5:18" }, "nodeType": "YulFunctionCall", - "src": "3384:24:77" + "src": "3384:24:18" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "3374:6:77", + "src": "3374:6:18", "type": "" } ] @@ -2565,7 +2610,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3455:83:77", + "src": "3455:83:18", "statements": [ { "expression": { @@ -2573,13 +2618,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "3457:77:77" + "src": "3457:77:18" }, "nodeType": "YulFunctionCall", - "src": "3457:79:77" + "src": "3457:79:18" }, "nodeType": "YulExpressionStatement", - "src": "3457:79:77" + "src": "3457:79:18" } ] }, @@ -2588,12 +2633,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3427:6:77" + "src": "3427:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3435:18:77", + "src": "3435:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -2601,17 +2646,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "3424:2:77" + "src": "3424:2:18" }, "nodeType": "YulFunctionCall", - "src": "3424:30:77" + "src": "3424:30:18" }, "nodeType": "YulIf", - "src": "3421:117:77" + "src": "3421:117:18" }, { "nodeType": "YulAssignment", - "src": "3552:84:77", + "src": "3552:84:18", "value": { "arguments": [ { @@ -2619,41 +2664,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3608:9:77" + "src": "3608:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3619:6:77" + "src": "3619:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3604:3:77" + "src": "3604:3:18" }, "nodeType": "YulFunctionCall", - "src": "3604:22:77" + "src": "3604:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3628:7:77" + "src": "3628:7:18" } ], "functionName": { "name": "abi_decode_t_string_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "3562:41:77" + "src": "3562:41:18" }, "nodeType": "YulFunctionCall", - "src": "3562:74:77" + "src": "3562:74:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3552:6:77" + "src": "3552:6:18" } ] } @@ -2661,11 +2706,11 @@ }, { "nodeType": "YulBlock", - "src": "3656:292:77", + "src": "3656:292:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3671:39:77", + "src": "3671:39:18", "value": { "arguments": [ { @@ -2673,12 +2718,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3695:9:77" + "src": "3695:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3706:2:77", + "src": "3706:2:18", "type": "", "value": "32" } @@ -2686,25 +2731,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3691:3:77" + "src": "3691:3:18" }, "nodeType": "YulFunctionCall", - "src": "3691:18:77" + "src": "3691:18:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "3685:5:77" + "src": "3685:5:18" }, "nodeType": "YulFunctionCall", - "src": "3685:25:77" + "src": "3685:25:18" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "3675:6:77", + "src": "3675:6:18", "type": "" } ] @@ -2712,7 +2757,7 @@ { "body": { "nodeType": "YulBlock", - "src": "3757:83:77", + "src": "3757:83:18", "statements": [ { "expression": { @@ -2720,13 +2765,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "3759:77:77" + "src": "3759:77:18" }, "nodeType": "YulFunctionCall", - "src": "3759:79:77" + "src": "3759:79:18" }, "nodeType": "YulExpressionStatement", - "src": "3759:79:77" + "src": "3759:79:18" } ] }, @@ -2735,12 +2780,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3729:6:77" + "src": "3729:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3737:18:77", + "src": "3737:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -2748,17 +2793,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "3726:2:77" + "src": "3726:2:18" }, "nodeType": "YulFunctionCall", - "src": "3726:30:77" + "src": "3726:30:18" }, "nodeType": "YulIf", - "src": "3723:117:77" + "src": "3723:117:18" }, { "nodeType": "YulAssignment", - "src": "3854:84:77", + "src": "3854:84:18", "value": { "arguments": [ { @@ -2766,41 +2811,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3910:9:77" + "src": "3910:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3921:6:77" + "src": "3921:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3906:3:77" + "src": "3906:3:18" }, "nodeType": "YulFunctionCall", - "src": "3906:22:77" + "src": "3906:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3930:7:77" + "src": "3930:7:18" } ], "functionName": { "name": "abi_decode_t_string_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "3864:41:77" + "src": "3864:41:18" }, "nodeType": "YulFunctionCall", - "src": "3864:74:77" + "src": "3864:74:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "3854:6:77" + "src": "3854:6:18" } ] } @@ -2808,15 +2853,15 @@ }, { "nodeType": "YulBlock", - "src": "3958:129:77", + "src": "3958:129:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3973:16:77", + "src": "3973:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3987:2:77", + "src": "3987:2:18", "type": "", "value": "64" }, @@ -2824,14 +2869,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3977:6:77", + "src": "3977:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4003:74:77", + "src": "4003:74:18", "value": { "arguments": [ { @@ -2839,41 +2884,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4049:9:77" + "src": "4049:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4060:6:77" + "src": "4060:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4045:3:77" + "src": "4045:3:18" }, "nodeType": "YulFunctionCall", - "src": "4045:22:77" + "src": "4045:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4069:7:77" + "src": "4069:7:18" } ], "functionName": { "name": "abi_decode_t_uint256_fromMemory", "nodeType": "YulIdentifier", - "src": "4013:31:77" + "src": "4013:31:18" }, "nodeType": "YulFunctionCall", - "src": "4013:64:77" + "src": "4013:64:18" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "4003:6:77" + "src": "4003:6:18" } ] } @@ -2887,13 +2932,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3170:9:77", + "src": "3170:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3181:7:77", + "src": "3181:7:18", "type": "" } ], @@ -2901,28 +2946,28 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3193:6:77", + "src": "3193:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "3201:6:77", + "src": "3201:6:18", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "3209:6:77", + "src": "3209:6:18", "type": "" } ], - "src": "3085:1009:77" + "src": "3085:1009:18" }, { "body": { "nodeType": "YulBlock", - "src": "4128:152:77", + "src": "4128:152:18", "statements": [ { "expression": { @@ -2930,14 +2975,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4145:1:77", + "src": "4145:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4148:77:77", + "src": "4148:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -2945,13 +2990,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4138:6:77" + "src": "4138:6:18" }, "nodeType": "YulFunctionCall", - "src": "4138:88:77" + "src": "4138:88:18" }, "nodeType": "YulExpressionStatement", - "src": "4138:88:77" + "src": "4138:88:18" }, { "expression": { @@ -2959,14 +3004,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4242:1:77", + "src": "4242:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4245:4:77", + "src": "4245:4:18", "type": "", "value": "0x22" } @@ -2974,13 +3019,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "4235:6:77" + "src": "4235:6:18" }, "nodeType": "YulFunctionCall", - "src": "4235:15:77" + "src": "4235:15:18" }, "nodeType": "YulExpressionStatement", - "src": "4235:15:77" + "src": "4235:15:18" }, { "expression": { @@ -2988,14 +3033,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4266:1:77", + "src": "4266:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4269:4:77", + "src": "4269:4:18", "type": "", "value": "0x24" } @@ -3003,39 +3048,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4259:6:77" + "src": "4259:6:18" }, "nodeType": "YulFunctionCall", - "src": "4259:15:77" + "src": "4259:15:18" }, "nodeType": "YulExpressionStatement", - "src": "4259:15:77" + "src": "4259:15:18" } ] }, "name": "panic_error_0x22", "nodeType": "YulFunctionDefinition", - "src": "4100:180:77" + "src": "4100:180:18" }, { "body": { "nodeType": "YulBlock", - "src": "4337:269:77", + "src": "4337:269:18", "statements": [ { "nodeType": "YulAssignment", - "src": "4347:22:77", + "src": "4347:22:18", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "4361:4:77" + "src": "4361:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4367:1:77", + "src": "4367:1:18", "type": "", "value": "2" } @@ -3043,33 +3088,33 @@ "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "4357:3:77" + "src": "4357:3:18" }, "nodeType": "YulFunctionCall", - "src": "4357:12:77" + "src": "4357:12:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "4347:6:77" + "src": "4347:6:18" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "4378:38:77", + "src": "4378:38:18", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "4408:4:77" + "src": "4408:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4414:1:77", + "src": "4414:1:18", "type": "", "value": "1" } @@ -3077,16 +3122,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "4404:3:77" + "src": "4404:3:18" }, "nodeType": "YulFunctionCall", - "src": "4404:12:77" + "src": "4404:12:18" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "4382:18:77", + "src": "4382:18:18", "type": "" } ] @@ -3094,22 +3139,22 @@ { "body": { "nodeType": "YulBlock", - "src": "4455:51:77", + "src": "4455:51:18", "statements": [ { "nodeType": "YulAssignment", - "src": "4469:27:77", + "src": "4469:27:18", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "4483:6:77" + "src": "4483:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4491:4:77", + "src": "4491:4:18", "type": "", "value": "0x7f" } @@ -3117,16 +3162,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "4479:3:77" + "src": "4479:3:18" }, "nodeType": "YulFunctionCall", - "src": "4479:17:77" + "src": "4479:17:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "4469:6:77" + "src": "4469:6:18" } ] } @@ -3137,24 +3182,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "4435:18:77" + "src": "4435:18:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4428:6:77" + "src": "4428:6:18" }, "nodeType": "YulFunctionCall", - "src": "4428:26:77" + "src": "4428:26:18" }, "nodeType": "YulIf", - "src": "4425:81:77" + "src": "4425:81:18" }, { "body": { "nodeType": "YulBlock", - "src": "4558:42:77", + "src": "4558:42:18", "statements": [ { "expression": { @@ -3162,13 +3207,13 @@ "functionName": { "name": "panic_error_0x22", "nodeType": "YulIdentifier", - "src": "4572:16:77" + "src": "4572:16:18" }, "nodeType": "YulFunctionCall", - "src": "4572:18:77" + "src": "4572:18:18" }, "nodeType": "YulExpressionStatement", - "src": "4572:18:77" + "src": "4572:18:18" } ] }, @@ -3177,19 +3222,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "4522:18:77" + "src": "4522:18:18" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "4545:6:77" + "src": "4545:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4553:2:77", + "src": "4553:2:18", "type": "", "value": "32" } @@ -3197,22 +3242,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "4542:2:77" + "src": "4542:2:18" }, "nodeType": "YulFunctionCall", - "src": "4542:14:77" + "src": "4542:14:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "4519:2:77" + "src": "4519:2:18" }, "nodeType": "YulFunctionCall", - "src": "4519:38:77" + "src": "4519:38:18" }, "nodeType": "YulIf", - "src": "4516:84:77" + "src": "4516:84:18" } ] }, @@ -3222,7 +3267,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "4321:4:77", + "src": "4321:4:18", "type": "" } ], @@ -3230,16 +3275,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "4330:6:77", + "src": "4330:6:18", "type": "" } ], - "src": "4286:320:77" + "src": "4286:320:18" } ] }, "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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\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_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function 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_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_string_memory_ptrt_string_memory_ptrt_uint256_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n}\n", - "id": 77, + "id": 18, "language": "Yul", "name": "#utility.yul" } @@ -3248,22 +3293,22 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:41783:77", + "src": "0:45976:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "47:35:77", + "src": "47:35:18", "statements": [ { "nodeType": "YulAssignment", - "src": "57:19:77", + "src": "57:19:18", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "73:2:77", + "src": "73:2:18", "type": "", "value": "64" } @@ -3271,16 +3316,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "67:5:77" + "src": "67:5:18" }, "nodeType": "YulFunctionCall", - "src": "67:9:77" + "src": "67:9:18" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "57:6:77" + "src": "57:6:18" } ] } @@ -3292,16 +3337,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40:6:77", + "src": "40:6:18", "type": "" } ], - "src": "7:75:77" + "src": "7:75:18" }, { "body": { "nodeType": "YulBlock", - "src": "177:28:77", + "src": "177:28:18", "statements": [ { "expression": { @@ -3309,14 +3354,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "194:1:77", + "src": "194:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "197:1:77", + "src": "197:1:18", "type": "", "value": "0" } @@ -3324,24 +3369,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "187:6:77" + "src": "187:6:18" }, "nodeType": "YulFunctionCall", - "src": "187:12:77" + "src": "187:12:18" }, "nodeType": "YulExpressionStatement", - "src": "187:12:77" + "src": "187:12:18" } ] }, "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulFunctionDefinition", - "src": "88:117:77" + "src": "88:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "300:28:77", + "src": "300:28:18", "statements": [ { "expression": { @@ -3349,14 +3394,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "317:1:77", + "src": "317:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "320:1:77", + "src": "320:1:18", "type": "", "value": "0" } @@ -3364,39 +3409,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "310:6:77" + "src": "310:6:18" }, "nodeType": "YulFunctionCall", - "src": "310:12:77" + "src": "310:12:18" }, "nodeType": "YulExpressionStatement", - "src": "310:12:77" + "src": "310:12:18" } ] }, "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulFunctionDefinition", - "src": "211:117:77" + "src": "211:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "378:105:77", + "src": "378:105:18", "statements": [ { "nodeType": "YulAssignment", - "src": "388:89:77", + "src": "388:89:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "403:5:77" + "src": "403:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "410:66:77", + "src": "410:66:18", "type": "", "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" } @@ -3404,16 +3449,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "399:3:77" + "src": "399:3:18" }, "nodeType": "YulFunctionCall", - "src": "399:78:77" + "src": "399:78:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "388:7:77" + "src": "388:7:18" } ] } @@ -3425,7 +3470,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "360:5:77", + "src": "360:5:18", "type": "" } ], @@ -3433,21 +3478,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "370:7:77", + "src": "370:7:18", "type": "" } ], - "src": "334:149:77" + "src": "334:149:18" }, { "body": { "nodeType": "YulBlock", - "src": "531:78:77", + "src": "531:78:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "587:16:77", + "src": "587:16:18", "statements": [ { "expression": { @@ -3455,14 +3500,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "596:1:77", + "src": "596:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "599:1:77", + "src": "599:1:18", "type": "", "value": "0" } @@ -3470,13 +3515,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "589:6:77" + "src": "589:6:18" }, "nodeType": "YulFunctionCall", - "src": "589:12:77" + "src": "589:12:18" }, "nodeType": "YulExpressionStatement", - "src": "589:12:77" + "src": "589:12:18" } ] }, @@ -3487,44 +3532,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "554:5:77" + "src": "554:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "578:5:77" + "src": "578:5:18" } ], "functionName": { "name": "cleanup_t_bytes4", "nodeType": "YulIdentifier", - "src": "561:16:77" + "src": "561:16:18" }, "nodeType": "YulFunctionCall", - "src": "561:23:77" + "src": "561:23:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "551:2:77" + "src": "551:2:18" }, "nodeType": "YulFunctionCall", - "src": "551:34:77" + "src": "551:34:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "544:6:77" + "src": "544:6:18" }, "nodeType": "YulFunctionCall", - "src": "544:42:77" + "src": "544:42:18" }, "nodeType": "YulIf", - "src": "541:62:77" + "src": "541:62:18" } ] }, @@ -3534,41 +3579,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "524:5:77", + "src": "524:5:18", "type": "" } ], - "src": "489:120:77" + "src": "489:120:18" }, { "body": { "nodeType": "YulBlock", - "src": "666:86:77", + "src": "666:86:18", "statements": [ { "nodeType": "YulAssignment", - "src": "676:29:77", + "src": "676:29:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "698:6:77" + "src": "698:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "685:12:77" + "src": "685:12:18" }, "nodeType": "YulFunctionCall", - "src": "685:20:77" + "src": "685:20:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "676:5:77" + "src": "676:5:18" } ] }, @@ -3578,19 +3623,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "740:5:77" + "src": "740:5:18" } ], "functionName": { "name": "validator_revert_t_bytes4", "nodeType": "YulIdentifier", - "src": "714:25:77" + "src": "714:25:18" }, "nodeType": "YulFunctionCall", - "src": "714:32:77" + "src": "714:32:18" }, "nodeType": "YulExpressionStatement", - "src": "714:32:77" + "src": "714:32:18" } ] }, @@ -3600,13 +3645,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "644:6:77", + "src": "644:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "652:3:77", + "src": "652:3:18", "type": "" } ], @@ -3614,21 +3659,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "660:5:77", + "src": "660:5:18", "type": "" } ], - "src": "615:137:77" + "src": "615:137:18" }, { "body": { "nodeType": "YulBlock", - "src": "823:262:77", + "src": "823:262:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "869:83:77", + "src": "869:83:18", "statements": [ { "expression": { @@ -3636,13 +3681,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "871:77:77" + "src": "871:77:18" }, "nodeType": "YulFunctionCall", - "src": "871:79:77" + "src": "871:79:18" }, "nodeType": "YulExpressionStatement", - "src": "871:79:77" + "src": "871:79:18" } ] }, @@ -3653,26 +3698,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "844:7:77" + "src": "844:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "853:9:77" + "src": "853:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "840:3:77" + "src": "840:3:18" }, "nodeType": "YulFunctionCall", - "src": "840:23:77" + "src": "840:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "865:2:77", + "src": "865:2:18", "type": "", "value": "32" } @@ -3680,25 +3725,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "836:3:77" + "src": "836:3:18" }, "nodeType": "YulFunctionCall", - "src": "836:32:77" + "src": "836:32:18" }, "nodeType": "YulIf", - "src": "833:119:77" + "src": "833:119:18" }, { "nodeType": "YulBlock", - "src": "962:116:77", + "src": "962:116:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "977:15:77", + "src": "977:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "991:1:77", + "src": "991:1:18", "type": "", "value": "0" }, @@ -3706,14 +3751,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "981:6:77", + "src": "981:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "1006:62:77", + "src": "1006:62:18", "value": { "arguments": [ { @@ -3721,41 +3766,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1040:9:77" + "src": "1040:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "1051:6:77" + "src": "1051:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1036:3:77" + "src": "1036:3:18" }, "nodeType": "YulFunctionCall", - "src": "1036:22:77" + "src": "1036:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "1060:7:77" + "src": "1060:7:18" } ], "functionName": { "name": "abi_decode_t_bytes4", "nodeType": "YulIdentifier", - "src": "1016:19:77" + "src": "1016:19:18" }, "nodeType": "YulFunctionCall", - "src": "1016:52:77" + "src": "1016:52:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1006:6:77" + "src": "1006:6:18" } ] } @@ -3769,13 +3814,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "793:9:77", + "src": "793:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "804:7:77", + "src": "804:7:18", "type": "" } ], @@ -3783,20 +3828,20 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "816:6:77", + "src": "816:6:18", "type": "" } ], - "src": "758:327:77" + "src": "758:327:18" }, { "body": { "nodeType": "YulBlock", - "src": "1133:48:77", + "src": "1133:48:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1143:32:77", + "src": "1143:32:18", "value": { "arguments": [ { @@ -3804,31 +3849,31 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "1168:5:77" + "src": "1168:5:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1161:6:77" + "src": "1161:6:18" }, "nodeType": "YulFunctionCall", - "src": "1161:13:77" + "src": "1161:13:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1154:6:77" + "src": "1154:6:18" }, "nodeType": "YulFunctionCall", - "src": "1154:21:77" + "src": "1154:21:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "1143:7:77" + "src": "1143:7:18" } ] } @@ -3840,7 +3885,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1115:5:77", + "src": "1115:5:18", "type": "" } ], @@ -3848,16 +3893,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "1125:7:77", + "src": "1125:7:18", "type": "" } ], - "src": "1091:90:77" + "src": "1091:90:18" }, { "body": { "nodeType": "YulBlock", - "src": "1246:50:77", + "src": "1246:50:18", "statements": [ { "expression": { @@ -3865,35 +3910,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1263:3:77" + "src": "1263:3:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1283:5:77" + "src": "1283:5:18" } ], "functionName": { "name": "cleanup_t_bool", "nodeType": "YulIdentifier", - "src": "1268:14:77" + "src": "1268:14:18" }, "nodeType": "YulFunctionCall", - "src": "1268:21:77" + "src": "1268:21:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1256:6:77" + "src": "1256:6:18" }, "nodeType": "YulFunctionCall", - "src": "1256:34:77" + "src": "1256:34:18" }, "nodeType": "YulExpressionStatement", - "src": "1256:34:77" + "src": "1256:34:18" } ] }, @@ -3903,37 +3948,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1234:5:77", + "src": "1234:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "1241:3:77", + "src": "1241:3:18", "type": "" } ], - "src": "1187:109:77" + "src": "1187:109:18" }, { "body": { "nodeType": "YulBlock", - "src": "1394:118:77", + "src": "1394:118:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1404:26:77", + "src": "1404:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1416:9:77" + "src": "1416:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1427:2:77", + "src": "1427:2:18", "type": "", "value": "32" } @@ -3941,16 +3986,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1412:3:77" + "src": "1412:3:18" }, "nodeType": "YulFunctionCall", - "src": "1412:18:77" + "src": "1412:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "1404:4:77" + "src": "1404:4:18" } ] }, @@ -3960,19 +4005,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1478:6:77" + "src": "1478:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1491:9:77" + "src": "1491:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1502:1:77", + "src": "1502:1:18", "type": "", "value": "0" } @@ -3980,22 +4025,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1487:3:77" + "src": "1487:3:18" }, "nodeType": "YulFunctionCall", - "src": "1487:17:77" + "src": "1487:17:18" } ], "functionName": { "name": "abi_encode_t_bool_to_t_bool_fromStack", "nodeType": "YulIdentifier", - "src": "1440:37:77" + "src": "1440:37:18" }, "nodeType": "YulFunctionCall", - "src": "1440:65:77" + "src": "1440:65:18" }, "nodeType": "YulExpressionStatement", - "src": "1440:65:77" + "src": "1440:65:18" } ] }, @@ -4005,13 +4050,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "1366:9:77", + "src": "1366:9:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "1378:6:77", + "src": "1378:6:18", "type": "" } ], @@ -4019,41 +4064,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "1389:4:77", + "src": "1389:4:18", "type": "" } ], - "src": "1302:210:77" + "src": "1302:210:18" }, { "body": { "nodeType": "YulBlock", - "src": "1577:40:77", + "src": "1577:40:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1588:22:77", + "src": "1588:22:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1604:5:77" + "src": "1604:5:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "1598:5:77" + "src": "1598:5:18" }, "nodeType": "YulFunctionCall", - "src": "1598:12:77" + "src": "1598:12:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "1588:6:77" + "src": "1588:6:18" } ] } @@ -4065,7 +4110,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1560:5:77", + "src": "1560:5:18", "type": "" } ], @@ -4073,16 +4118,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "1570:6:77", + "src": "1570:6:18", "type": "" } ], - "src": "1518:99:77" + "src": "1518:99:18" }, { "body": { "nodeType": "YulBlock", - "src": "1719:73:77", + "src": "1719:73:18", "statements": [ { "expression": { @@ -4090,39 +4135,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1736:3:77" + "src": "1736:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1741:6:77" + "src": "1741:6:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1729:6:77" + "src": "1729:6:18" }, "nodeType": "YulFunctionCall", - "src": "1729:19:77" + "src": "1729:19:18" }, "nodeType": "YulExpressionStatement", - "src": "1729:19:77" + "src": "1729:19:18" }, { "nodeType": "YulAssignment", - "src": "1757:29:77", + "src": "1757:29:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1776:3:77" + "src": "1776:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1781:4:77", + "src": "1781:4:18", "type": "", "value": "0x20" } @@ -4130,16 +4175,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1772:3:77" + "src": "1772:3:18" }, "nodeType": "YulFunctionCall", - "src": "1772:14:77" + "src": "1772:14:18" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "1757:11:77" + "src": "1757:11:18" } ] } @@ -4151,13 +4196,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "1691:3:77", + "src": "1691:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1696:6:77", + "src": "1696:6:18", "type": "" } ], @@ -4165,24 +4210,24 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "1707:11:77", + "src": "1707:11:18", "type": "" } ], - "src": "1623:169:77" + "src": "1623:169:18" }, { "body": { "nodeType": "YulBlock", - "src": "1847:258:77", + "src": "1847:258:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "1857:10:77", + "src": "1857:10:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "1866:1:77", + "src": "1866:1:18", "type": "", "value": "0" }, @@ -4190,7 +4235,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "1861:1:77", + "src": "1861:1:18", "type": "" } ] @@ -4198,7 +4243,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1926:63:77", + "src": "1926:63:18", "statements": [ { "expression": { @@ -4208,21 +4253,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "1951:3:77" + "src": "1951:3:18" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1956:1:77" + "src": "1956:1:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1947:3:77" + "src": "1947:3:18" }, "nodeType": "YulFunctionCall", - "src": "1947:11:77" + "src": "1947:11:18" }, { "arguments": [ @@ -4231,42 +4276,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "1970:3:77" + "src": "1970:3:18" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1975:1:77" + "src": "1975:1:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1966:3:77" + "src": "1966:3:18" }, "nodeType": "YulFunctionCall", - "src": "1966:11:77" + "src": "1966:11:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "1960:5:77" + "src": "1960:5:18" }, "nodeType": "YulFunctionCall", - "src": "1960:18:77" + "src": "1960:18:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1940:6:77" + "src": "1940:6:18" }, "nodeType": "YulFunctionCall", - "src": "1940:39:77" + "src": "1940:39:18" }, "nodeType": "YulExpressionStatement", - "src": "1940:39:77" + "src": "1940:39:18" } ] }, @@ -4275,41 +4320,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "1887:1:77" + "src": "1887:1:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1890:6:77" + "src": "1890:6:18" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "1884:2:77" + "src": "1884:2:18" }, "nodeType": "YulFunctionCall", - "src": "1884:13:77" + "src": "1884:13:18" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "1898:19:77", + "src": "1898:19:18", "statements": [ { "nodeType": "YulAssignment", - "src": "1900:15:77", + "src": "1900:15:18", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1909:1:77" + "src": "1909:1:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1912:2:77", + "src": "1912:2:18", "type": "", "value": "32" } @@ -4317,16 +4362,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1905:3:77" + "src": "1905:3:18" }, "nodeType": "YulFunctionCall", - "src": "1905:10:77" + "src": "1905:10:18" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1900:1:77" + "src": "1900:1:18" } ] } @@ -4334,15 +4379,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "1880:3:77", + "src": "1880:3:18", "statements": [] }, - "src": "1876:113:77" + "src": "1876:113:18" }, { "body": { "nodeType": "YulBlock", - "src": "2023:76:77", + "src": "2023:76:18", "statements": [ { "expression": { @@ -4352,26 +4397,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2073:3:77" + "src": "2073:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2078:6:77" + "src": "2078:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2069:3:77" + "src": "2069:3:18" }, "nodeType": "YulFunctionCall", - "src": "2069:16:77" + "src": "2069:16:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2087:1:77", + "src": "2087:1:18", "type": "", "value": "0" } @@ -4379,13 +4424,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2062:6:77" + "src": "2062:6:18" }, "nodeType": "YulFunctionCall", - "src": "2062:27:77" + "src": "2062:27:18" }, "nodeType": "YulExpressionStatement", - "src": "2062:27:77" + "src": "2062:27:18" } ] }, @@ -4394,24 +4439,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "2004:1:77" + "src": "2004:1:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2007:6:77" + "src": "2007:6:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "2001:2:77" + "src": "2001:2:18" }, "nodeType": "YulFunctionCall", - "src": "2001:13:77" + "src": "2001:13:18" }, "nodeType": "YulIf", - "src": "1998:101:77" + "src": "1998:101:18" } ] }, @@ -4421,32 +4466,32 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "1829:3:77", + "src": "1829:3:18", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "1834:3:77", + "src": "1834:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1839:6:77", + "src": "1839:6:18", "type": "" } ], - "src": "1798:307:77" + "src": "1798:307:18" }, { "body": { "nodeType": "YulBlock", - "src": "2159:54:77", + "src": "2159:54:18", "statements": [ { "nodeType": "YulAssignment", - "src": "2169:38:77", + "src": "2169:38:18", "value": { "arguments": [ { @@ -4454,12 +4499,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2187:5:77" + "src": "2187:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2194:2:77", + "src": "2194:2:18", "type": "", "value": "31" } @@ -4467,17 +4512,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2183:3:77" + "src": "2183:3:18" }, "nodeType": "YulFunctionCall", - "src": "2183:14:77" + "src": "2183:14:18" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "2203:2:77", + "src": "2203:2:18", "type": "", "value": "31" } @@ -4485,25 +4530,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "2199:3:77" + "src": "2199:3:18" }, "nodeType": "YulFunctionCall", - "src": "2199:7:77" + "src": "2199:7:18" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2179:3:77" + "src": "2179:3:18" }, "nodeType": "YulFunctionCall", - "src": "2179:28:77" + "src": "2179:28:18" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "2169:6:77" + "src": "2169:6:18" } ] } @@ -4515,7 +4560,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2142:5:77", + "src": "2142:5:18", "type": "" } ], @@ -4523,74 +4568,74 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "2152:6:77", + "src": "2152:6:18", "type": "" } ], - "src": "2111:102:77" + "src": "2111:102:18" }, { "body": { "nodeType": "YulBlock", - "src": "2311:272:77", + "src": "2311:272:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "2321:53:77", + "src": "2321:53:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "2368:5:77" + "src": "2368:5:18" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "2335:32:77" + "src": "2335:32:18" }, "nodeType": "YulFunctionCall", - "src": "2335:39:77" + "src": "2335:39:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "2325:6:77", + "src": "2325:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "2383:78:77", + "src": "2383:78:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2449:3:77" + "src": "2449:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2454:6:77" + "src": "2454:6:18" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "2390:58:77" + "src": "2390:58:18" }, "nodeType": "YulFunctionCall", - "src": "2390:71:77" + "src": "2390:71:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2383:3:77" + "src": "2383:3:18" } ] }, @@ -4602,12 +4647,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2496:5:77" + "src": "2496:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2503:4:77", + "src": "2503:4:18", "type": "", "value": "0x20" } @@ -4615,73 +4660,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2492:3:77" + "src": "2492:3:18" }, "nodeType": "YulFunctionCall", - "src": "2492:16:77" + "src": "2492:16:18" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "2510:3:77" + "src": "2510:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2515:6:77" + "src": "2515:6:18" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "2470:21:77" + "src": "2470:21:18" }, "nodeType": "YulFunctionCall", - "src": "2470:52:77" + "src": "2470:52:18" }, "nodeType": "YulExpressionStatement", - "src": "2470:52:77" + "src": "2470:52:18" }, { "nodeType": "YulAssignment", - "src": "2531:46:77", + "src": "2531:46:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2542:3:77" + "src": "2542:3:18" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "2569:6:77" + "src": "2569:6:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "2547:21:77" + "src": "2547:21:18" }, "nodeType": "YulFunctionCall", - "src": "2547:29:77" + "src": "2547:29:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2538:3:77" + "src": "2538:3:18" }, "nodeType": "YulFunctionCall", - "src": "2538:39:77" + "src": "2538:39:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "2531:3:77" + "src": "2531:3:18" } ] } @@ -4693,13 +4738,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2292:5:77", + "src": "2292:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "2299:3:77", + "src": "2299:3:18", "type": "" } ], @@ -4707,31 +4752,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "2307:3:77", + "src": "2307:3:18", "type": "" } ], - "src": "2219:364:77" + "src": "2219:364:18" }, { "body": { "nodeType": "YulBlock", - "src": "2707:195:77", + "src": "2707:195:18", "statements": [ { "nodeType": "YulAssignment", - "src": "2717:26:77", + "src": "2717:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2729:9:77" + "src": "2729:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2740:2:77", + "src": "2740:2:18", "type": "", "value": "32" } @@ -4739,16 +4784,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2725:3:77" + "src": "2725:3:18" }, "nodeType": "YulFunctionCall", - "src": "2725:18:77" + "src": "2725:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2717:4:77" + "src": "2717:4:18" } ] }, @@ -4760,12 +4805,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2764:9:77" + "src": "2764:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2775:1:77", + "src": "2775:1:18", "type": "", "value": "0" } @@ -4773,73 +4818,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2760:3:77" + "src": "2760:3:18" }, "nodeType": "YulFunctionCall", - "src": "2760:17:77" + "src": "2760:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2783:4:77" + "src": "2783:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2789:9:77" + "src": "2789:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "2779:3:77" + "src": "2779:3:18" }, "nodeType": "YulFunctionCall", - "src": "2779:20:77" + "src": "2779:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2753:6:77" + "src": "2753:6:18" }, "nodeType": "YulFunctionCall", - "src": "2753:47:77" + "src": "2753:47:18" }, "nodeType": "YulExpressionStatement", - "src": "2753:47:77" + "src": "2753:47:18" }, { "nodeType": "YulAssignment", - "src": "2809:86:77", + "src": "2809:86:18", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2881:6:77" + "src": "2881:6:18" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "2890:4:77" + "src": "2890:4:18" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "2817:63:77" + "src": "2817:63:18" }, "nodeType": "YulFunctionCall", - "src": "2817:78:77" + "src": "2817:78:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2809:4:77" + "src": "2809:4:18" } ] } @@ -4851,13 +4896,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "2679:9:77", + "src": "2679:9:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "2691:6:77", + "src": "2691:6:18", "type": "" } ], @@ -4865,30 +4910,30 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "2702:4:77", + "src": "2702:4:18", "type": "" } ], - "src": "2589:313:77" + "src": "2589:313:18" }, { "body": { "nodeType": "YulBlock", - "src": "2953:32:77", + "src": "2953:32:18", "statements": [ { "nodeType": "YulAssignment", - "src": "2963:16:77", + "src": "2963:16:18", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "2974:5:77" + "src": "2974:5:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "2963:7:77" + "src": "2963:7:18" } ] } @@ -4900,7 +4945,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2935:5:77", + "src": "2935:5:18", "type": "" } ], @@ -4908,21 +4953,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "2945:7:77", + "src": "2945:7:18", "type": "" } ], - "src": "2908:77:77" + "src": "2908:77:18" }, { "body": { "nodeType": "YulBlock", - "src": "3034:79:77", + "src": "3034:79:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3091:16:77", + "src": "3091:16:18", "statements": [ { "expression": { @@ -4930,14 +4975,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3100:1:77", + "src": "3100:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3103:1:77", + "src": "3103:1:18", "type": "", "value": "0" } @@ -4945,13 +4990,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "3093:6:77" + "src": "3093:6:18" }, "nodeType": "YulFunctionCall", - "src": "3093:12:77" + "src": "3093:12:18" }, "nodeType": "YulExpressionStatement", - "src": "3093:12:77" + "src": "3093:12:18" } ] }, @@ -4962,44 +5007,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "3057:5:77" + "src": "3057:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3082:5:77" + "src": "3082:5:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "3064:17:77" + "src": "3064:17:18" }, "nodeType": "YulFunctionCall", - "src": "3064:24:77" + "src": "3064:24:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "3054:2:77" + "src": "3054:2:18" }, "nodeType": "YulFunctionCall", - "src": "3054:35:77" + "src": "3054:35:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "3047:6:77" + "src": "3047:6:18" }, "nodeType": "YulFunctionCall", - "src": "3047:43:77" + "src": "3047:43:18" }, "nodeType": "YulIf", - "src": "3044:63:77" + "src": "3044:63:18" } ] }, @@ -5009,41 +5054,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3027:5:77", + "src": "3027:5:18", "type": "" } ], - "src": "2991:122:77" + "src": "2991:122:18" }, { "body": { "nodeType": "YulBlock", - "src": "3171:87:77", + "src": "3171:87:18", "statements": [ { "nodeType": "YulAssignment", - "src": "3181:29:77", + "src": "3181:29:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3203:6:77" + "src": "3203:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "3190:12:77" + "src": "3190:12:18" }, "nodeType": "YulFunctionCall", - "src": "3190:20:77" + "src": "3190:20:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3181:5:77" + "src": "3181:5:18" } ] }, @@ -5053,19 +5098,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "3246:5:77" + "src": "3246:5:18" } ], "functionName": { "name": "validator_revert_t_uint256", "nodeType": "YulIdentifier", - "src": "3219:26:77" + "src": "3219:26:18" }, "nodeType": "YulFunctionCall", - "src": "3219:33:77" + "src": "3219:33:18" }, "nodeType": "YulExpressionStatement", - "src": "3219:33:77" + "src": "3219:33:18" } ] }, @@ -5075,13 +5120,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3149:6:77", + "src": "3149:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "3157:3:77", + "src": "3157:3:18", "type": "" } ], @@ -5089,21 +5134,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3165:5:77", + "src": "3165:5:18", "type": "" } ], - "src": "3119:139:77" + "src": "3119:139:18" }, { "body": { "nodeType": "YulBlock", - "src": "3330:263:77", + "src": "3330:263:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3376:83:77", + "src": "3376:83:18", "statements": [ { "expression": { @@ -5111,13 +5156,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "3378:77:77" + "src": "3378:77:18" }, "nodeType": "YulFunctionCall", - "src": "3378:79:77" + "src": "3378:79:18" }, "nodeType": "YulExpressionStatement", - "src": "3378:79:77" + "src": "3378:79:18" } ] }, @@ -5128,26 +5173,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3351:7:77" + "src": "3351:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3360:9:77" + "src": "3360:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3347:3:77" + "src": "3347:3:18" }, "nodeType": "YulFunctionCall", - "src": "3347:23:77" + "src": "3347:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3372:2:77", + "src": "3372:2:18", "type": "", "value": "32" } @@ -5155,25 +5200,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3343:3:77" + "src": "3343:3:18" }, "nodeType": "YulFunctionCall", - "src": "3343:32:77" + "src": "3343:32:18" }, "nodeType": "YulIf", - "src": "3340:119:77" + "src": "3340:119:18" }, { "nodeType": "YulBlock", - "src": "3469:117:77", + "src": "3469:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3484:15:77", + "src": "3484:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3498:1:77", + "src": "3498:1:18", "type": "", "value": "0" }, @@ -5181,14 +5226,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3488:6:77", + "src": "3488:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3513:63:77", + "src": "3513:63:18", "value": { "arguments": [ { @@ -5196,41 +5241,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3548:9:77" + "src": "3548:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3559:6:77" + "src": "3559:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3544:3:77" + "src": "3544:3:18" }, "nodeType": "YulFunctionCall", - "src": "3544:22:77" + "src": "3544:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3568:7:77" + "src": "3568:7:18" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "3523:20:77" + "src": "3523:20:18" }, "nodeType": "YulFunctionCall", - "src": "3523:53:77" + "src": "3523:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3513:6:77" + "src": "3513:6:18" } ] } @@ -5244,13 +5289,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3300:9:77", + "src": "3300:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3311:7:77", + "src": "3311:7:18", "type": "" } ], @@ -5258,31 +5303,31 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3323:6:77", + "src": "3323:6:18", "type": "" } ], - "src": "3264:329:77" + "src": "3264:329:18" }, { "body": { "nodeType": "YulBlock", - "src": "3644:81:77", + "src": "3644:81:18", "statements": [ { "nodeType": "YulAssignment", - "src": "3654:65:77", + "src": "3654:65:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3669:5:77" + "src": "3669:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3676:42:77", + "src": "3676:42:18", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -5290,16 +5335,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "3665:3:77" + "src": "3665:3:18" }, "nodeType": "YulFunctionCall", - "src": "3665:54:77" + "src": "3665:54:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "3654:7:77" + "src": "3654:7:18" } ] } @@ -5311,7 +5356,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3626:5:77", + "src": "3626:5:18", "type": "" } ], @@ -5319,41 +5364,41 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "3636:7:77", + "src": "3636:7:18", "type": "" } ], - "src": "3599:126:77" + "src": "3599:126:18" }, { "body": { "nodeType": "YulBlock", - "src": "3776:51:77", + "src": "3776:51:18", "statements": [ { "nodeType": "YulAssignment", - "src": "3786:35:77", + "src": "3786:35:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3815:5:77" + "src": "3815:5:18" } ], "functionName": { "name": "cleanup_t_uint160", "nodeType": "YulIdentifier", - "src": "3797:17:77" + "src": "3797:17:18" }, "nodeType": "YulFunctionCall", - "src": "3797:24:77" + "src": "3797:24:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "3786:7:77" + "src": "3786:7:18" } ] } @@ -5365,7 +5410,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3758:5:77", + "src": "3758:5:18", "type": "" } ], @@ -5373,16 +5418,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "3768:7:77", + "src": "3768:7:18", "type": "" } ], - "src": "3731:96:77" + "src": "3731:96:18" }, { "body": { "nodeType": "YulBlock", - "src": "3898:53:77", + "src": "3898:53:18", "statements": [ { "expression": { @@ -5390,35 +5435,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3915:3:77" + "src": "3915:3:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3938:5:77" + "src": "3938:5:18" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "3920:17:77" + "src": "3920:17:18" }, "nodeType": "YulFunctionCall", - "src": "3920:24:77" + "src": "3920:24:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "3908:6:77" + "src": "3908:6:18" }, "nodeType": "YulFunctionCall", - "src": "3908:37:77" + "src": "3908:37:18" }, "nodeType": "YulExpressionStatement", - "src": "3908:37:77" + "src": "3908:37:18" } ] }, @@ -5428,37 +5473,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3886:5:77", + "src": "3886:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "3893:3:77", + "src": "3893:3:18", "type": "" } ], - "src": "3833:118:77" + "src": "3833:118:18" }, { "body": { "nodeType": "YulBlock", - "src": "4055:124:77", + "src": "4055:124:18", "statements": [ { "nodeType": "YulAssignment", - "src": "4065:26:77", + "src": "4065:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4077:9:77" + "src": "4077:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4088:2:77", + "src": "4088:2:18", "type": "", "value": "32" } @@ -5466,16 +5511,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4073:3:77" + "src": "4073:3:18" }, "nodeType": "YulFunctionCall", - "src": "4073:18:77" + "src": "4073:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4065:4:77" + "src": "4065:4:18" } ] }, @@ -5485,19 +5530,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4145:6:77" + "src": "4145:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4158:9:77" + "src": "4158:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4169:1:77", + "src": "4169:1:18", "type": "", "value": "0" } @@ -5505,22 +5550,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4154:3:77" + "src": "4154:3:18" }, "nodeType": "YulFunctionCall", - "src": "4154:17:77" + "src": "4154:17:18" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "4101:43:77" + "src": "4101:43:18" }, "nodeType": "YulFunctionCall", - "src": "4101:71:77" + "src": "4101:71:18" }, "nodeType": "YulExpressionStatement", - "src": "4101:71:77" + "src": "4101:71:18" } ] }, @@ -5530,13 +5575,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4027:9:77", + "src": "4027:9:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4039:6:77", + "src": "4039:6:18", "type": "" } ], @@ -5544,21 +5589,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4050:4:77", + "src": "4050:4:18", "type": "" } ], - "src": "3957:222:77" + "src": "3957:222:18" }, { "body": { "nodeType": "YulBlock", - "src": "4228:79:77", + "src": "4228:79:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4285:16:77", + "src": "4285:16:18", "statements": [ { "expression": { @@ -5566,14 +5611,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4294:1:77", + "src": "4294:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4297:1:77", + "src": "4297:1:18", "type": "", "value": "0" } @@ -5581,13 +5626,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4287:6:77" + "src": "4287:6:18" }, "nodeType": "YulFunctionCall", - "src": "4287:12:77" + "src": "4287:12:18" }, "nodeType": "YulExpressionStatement", - "src": "4287:12:77" + "src": "4287:12:18" } ] }, @@ -5598,44 +5643,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4251:5:77" + "src": "4251:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4276:5:77" + "src": "4276:5:18" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "4258:17:77" + "src": "4258:17:18" }, "nodeType": "YulFunctionCall", - "src": "4258:24:77" + "src": "4258:24:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "4248:2:77" + "src": "4248:2:18" }, "nodeType": "YulFunctionCall", - "src": "4248:35:77" + "src": "4248:35:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4241:6:77" + "src": "4241:6:18" }, "nodeType": "YulFunctionCall", - "src": "4241:43:77" + "src": "4241:43:18" }, "nodeType": "YulIf", - "src": "4238:63:77" + "src": "4238:63:18" } ] }, @@ -5645,41 +5690,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4221:5:77", + "src": "4221:5:18", "type": "" } ], - "src": "4185:122:77" + "src": "4185:122:18" }, { "body": { "nodeType": "YulBlock", - "src": "4365:87:77", + "src": "4365:87:18", "statements": [ { "nodeType": "YulAssignment", - "src": "4375:29:77", + "src": "4375:29:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "4397:6:77" + "src": "4397:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "4384:12:77" + "src": "4384:12:18" }, "nodeType": "YulFunctionCall", - "src": "4384:20:77" + "src": "4384:20:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4375:5:77" + "src": "4375:5:18" } ] }, @@ -5689,19 +5734,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4440:5:77" + "src": "4440:5:18" } ], "functionName": { "name": "validator_revert_t_address", "nodeType": "YulIdentifier", - "src": "4413:26:77" + "src": "4413:26:18" }, "nodeType": "YulFunctionCall", - "src": "4413:33:77" + "src": "4413:33:18" }, "nodeType": "YulExpressionStatement", - "src": "4413:33:77" + "src": "4413:33:18" } ] }, @@ -5711,13 +5756,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4343:6:77", + "src": "4343:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "4351:3:77", + "src": "4351:3:18", "type": "" } ], @@ -5725,21 +5770,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4359:5:77", + "src": "4359:5:18", "type": "" } ], - "src": "4313:139:77" + "src": "4313:139:18" }, { "body": { "nodeType": "YulBlock", - "src": "4541:391:77", + "src": "4541:391:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4587:83:77", + "src": "4587:83:18", "statements": [ { "expression": { @@ -5747,13 +5792,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "4589:77:77" + "src": "4589:77:18" }, "nodeType": "YulFunctionCall", - "src": "4589:79:77" + "src": "4589:79:18" }, "nodeType": "YulExpressionStatement", - "src": "4589:79:77" + "src": "4589:79:18" } ] }, @@ -5764,26 +5809,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4562:7:77" + "src": "4562:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4571:9:77" + "src": "4571:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4558:3:77" + "src": "4558:3:18" }, "nodeType": "YulFunctionCall", - "src": "4558:23:77" + "src": "4558:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4583:2:77", + "src": "4583:2:18", "type": "", "value": "64" } @@ -5791,25 +5836,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "4554:3:77" + "src": "4554:3:18" }, "nodeType": "YulFunctionCall", - "src": "4554:32:77" + "src": "4554:32:18" }, "nodeType": "YulIf", - "src": "4551:119:77" + "src": "4551:119:18" }, { "nodeType": "YulBlock", - "src": "4680:117:77", + "src": "4680:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "4695:15:77", + "src": "4695:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "4709:1:77", + "src": "4709:1:18", "type": "", "value": "0" }, @@ -5817,14 +5862,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4699:6:77", + "src": "4699:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4724:63:77", + "src": "4724:63:18", "value": { "arguments": [ { @@ -5832,41 +5877,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4759:9:77" + "src": "4759:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4770:6:77" + "src": "4770:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4755:3:77" + "src": "4755:3:18" }, "nodeType": "YulFunctionCall", - "src": "4755:22:77" + "src": "4755:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4779:7:77" + "src": "4779:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "4734:20:77" + "src": "4734:20:18" }, "nodeType": "YulFunctionCall", - "src": "4734:53:77" + "src": "4734:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4724:6:77" + "src": "4724:6:18" } ] } @@ -5874,15 +5919,15 @@ }, { "nodeType": "YulBlock", - "src": "4807:118:77", + "src": "4807:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "4822:16:77", + "src": "4822:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "4836:2:77", + "src": "4836:2:18", "type": "", "value": "32" }, @@ -5890,14 +5935,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4826:6:77", + "src": "4826:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4852:63:77", + "src": "4852:63:18", "value": { "arguments": [ { @@ -5905,41 +5950,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4887:9:77" + "src": "4887:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4898:6:77" + "src": "4898:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4883:3:77" + "src": "4883:3:18" }, "nodeType": "YulFunctionCall", - "src": "4883:22:77" + "src": "4883:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4907:7:77" + "src": "4907:7:18" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "4862:20:77" + "src": "4862:20:18" }, "nodeType": "YulFunctionCall", - "src": "4862:53:77" + "src": "4862:53:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "4852:6:77" + "src": "4852:6:18" } ] } @@ -5953,13 +5998,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4503:9:77", + "src": "4503:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "4514:7:77", + "src": "4514:7:18", "type": "" } ], @@ -5967,22 +6012,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "4526:6:77", + "src": "4526:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "4534:6:77", + "src": "4534:6:18", "type": "" } ], - "src": "4458:474:77" + "src": "4458:474:18" }, { "body": { "nodeType": "YulBlock", - "src": "5003:53:77", + "src": "5003:53:18", "statements": [ { "expression": { @@ -5990,35 +6035,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "5020:3:77" + "src": "5020:3:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "5043:5:77" + "src": "5043:5:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "5025:17:77" + "src": "5025:17:18" }, "nodeType": "YulFunctionCall", - "src": "5025:24:77" + "src": "5025:24:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5013:6:77" + "src": "5013:6:18" }, "nodeType": "YulFunctionCall", - "src": "5013:37:77" + "src": "5013:37:18" }, "nodeType": "YulExpressionStatement", - "src": "5013:37:77" + "src": "5013:37:18" } ] }, @@ -6028,37 +6073,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4991:5:77", + "src": "4991:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "4998:3:77", + "src": "4998:3:18", "type": "" } ], - "src": "4938:118:77" + "src": "4938:118:18" }, { "body": { "nodeType": "YulBlock", - "src": "5160:124:77", + "src": "5160:124:18", "statements": [ { "nodeType": "YulAssignment", - "src": "5170:26:77", + "src": "5170:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5182:9:77" + "src": "5182:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5193:2:77", + "src": "5193:2:18", "type": "", "value": "32" } @@ -6066,16 +6111,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5178:3:77" + "src": "5178:3:18" }, "nodeType": "YulFunctionCall", - "src": "5178:18:77" + "src": "5178:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "5170:4:77" + "src": "5170:4:18" } ] }, @@ -6085,19 +6130,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5250:6:77" + "src": "5250:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5263:9:77" + "src": "5263:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5274:1:77", + "src": "5274:1:18", "type": "", "value": "0" } @@ -6105,22 +6150,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5259:3:77" + "src": "5259:3:18" }, "nodeType": "YulFunctionCall", - "src": "5259:17:77" + "src": "5259:17:18" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "5206:43:77" + "src": "5206:43:18" }, "nodeType": "YulFunctionCall", - "src": "5206:71:77" + "src": "5206:71:18" }, "nodeType": "YulExpressionStatement", - "src": "5206:71:77" + "src": "5206:71:18" } ] }, @@ -6130,13 +6175,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5132:9:77", + "src": "5132:9:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "5144:6:77", + "src": "5144:6:18", "type": "" } ], @@ -6144,21 +6189,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "5155:4:77", + "src": "5155:4:18", "type": "" } ], - "src": "5062:222:77" + "src": "5062:222:18" }, { "body": { "nodeType": "YulBlock", - "src": "5356:263:77", + "src": "5356:263:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "5402:83:77", + "src": "5402:83:18", "statements": [ { "expression": { @@ -6166,13 +6211,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "5404:77:77" + "src": "5404:77:18" }, "nodeType": "YulFunctionCall", - "src": "5404:79:77" + "src": "5404:79:18" }, "nodeType": "YulExpressionStatement", - "src": "5404:79:77" + "src": "5404:79:18" } ] }, @@ -6183,26 +6228,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5377:7:77" + "src": "5377:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5386:9:77" + "src": "5386:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "5373:3:77" + "src": "5373:3:18" }, "nodeType": "YulFunctionCall", - "src": "5373:23:77" + "src": "5373:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5398:2:77", + "src": "5398:2:18", "type": "", "value": "32" } @@ -6210,25 +6255,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "5369:3:77" + "src": "5369:3:18" }, "nodeType": "YulFunctionCall", - "src": "5369:32:77" + "src": "5369:32:18" }, "nodeType": "YulIf", - "src": "5366:119:77" + "src": "5366:119:18" }, { "nodeType": "YulBlock", - "src": "5495:117:77", + "src": "5495:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5510:15:77", + "src": "5510:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5524:1:77", + "src": "5524:1:18", "type": "", "value": "0" }, @@ -6236,14 +6281,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5514:6:77", + "src": "5514:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5539:63:77", + "src": "5539:63:18", "value": { "arguments": [ { @@ -6251,41 +6296,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5574:9:77" + "src": "5574:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5585:6:77" + "src": "5585:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5570:3:77" + "src": "5570:3:18" }, "nodeType": "YulFunctionCall", - "src": "5570:22:77" + "src": "5570:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5594:7:77" + "src": "5594:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "5549:20:77" + "src": "5549:20:18" }, "nodeType": "YulFunctionCall", - "src": "5549:53:77" + "src": "5549:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5539:6:77" + "src": "5539:6:18" } ] } @@ -6299,13 +6344,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5326:9:77", + "src": "5326:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "5337:7:77", + "src": "5337:7:18", "type": "" } ], @@ -6313,21 +6358,21 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "5349:6:77", + "src": "5349:6:18", "type": "" } ], - "src": "5290:329:77" + "src": "5290:329:18" }, { "body": { "nodeType": "YulBlock", - "src": "5725:519:77", + "src": "5725:519:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "5771:83:77", + "src": "5771:83:18", "statements": [ { "expression": { @@ -6335,13 +6380,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "5773:77:77" + "src": "5773:77:18" }, "nodeType": "YulFunctionCall", - "src": "5773:79:77" + "src": "5773:79:18" }, "nodeType": "YulExpressionStatement", - "src": "5773:79:77" + "src": "5773:79:18" } ] }, @@ -6352,26 +6397,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5746:7:77" + "src": "5746:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5755:9:77" + "src": "5755:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "5742:3:77" + "src": "5742:3:18" }, "nodeType": "YulFunctionCall", - "src": "5742:23:77" + "src": "5742:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5767:2:77", + "src": "5767:2:18", "type": "", "value": "96" } @@ -6379,25 +6424,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "5738:3:77" + "src": "5738:3:18" }, "nodeType": "YulFunctionCall", - "src": "5738:32:77" + "src": "5738:32:18" }, "nodeType": "YulIf", - "src": "5735:119:77" + "src": "5735:119:18" }, { "nodeType": "YulBlock", - "src": "5864:117:77", + "src": "5864:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5879:15:77", + "src": "5879:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5893:1:77", + "src": "5893:1:18", "type": "", "value": "0" }, @@ -6405,14 +6450,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5883:6:77", + "src": "5883:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5908:63:77", + "src": "5908:63:18", "value": { "arguments": [ { @@ -6420,41 +6465,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5943:9:77" + "src": "5943:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5954:6:77" + "src": "5954:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5939:3:77" + "src": "5939:3:18" }, "nodeType": "YulFunctionCall", - "src": "5939:22:77" + "src": "5939:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5963:7:77" + "src": "5963:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "5918:20:77" + "src": "5918:20:18" }, "nodeType": "YulFunctionCall", - "src": "5918:53:77" + "src": "5918:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5908:6:77" + "src": "5908:6:18" } ] } @@ -6462,15 +6507,15 @@ }, { "nodeType": "YulBlock", - "src": "5991:118:77", + "src": "5991:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6006:16:77", + "src": "6006:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6020:2:77", + "src": "6020:2:18", "type": "", "value": "32" }, @@ -6478,14 +6523,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6010:6:77", + "src": "6010:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6036:63:77", + "src": "6036:63:18", "value": { "arguments": [ { @@ -6493,41 +6538,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6071:9:77" + "src": "6071:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "6082:6:77" + "src": "6082:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6067:3:77" + "src": "6067:3:18" }, "nodeType": "YulFunctionCall", - "src": "6067:22:77" + "src": "6067:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6091:7:77" + "src": "6091:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "6046:20:77" + "src": "6046:20:18" }, "nodeType": "YulFunctionCall", - "src": "6046:53:77" + "src": "6046:53:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "6036:6:77" + "src": "6036:6:18" } ] } @@ -6535,15 +6580,15 @@ }, { "nodeType": "YulBlock", - "src": "6119:118:77", + "src": "6119:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6134:16:77", + "src": "6134:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6148:2:77", + "src": "6148:2:18", "type": "", "value": "64" }, @@ -6551,14 +6596,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6138:6:77", + "src": "6138:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6164:63:77", + "src": "6164:63:18", "value": { "arguments": [ { @@ -6566,41 +6611,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6199:9:77" + "src": "6199:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "6210:6:77" + "src": "6210:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6195:3:77" + "src": "6195:3:18" }, "nodeType": "YulFunctionCall", - "src": "6195:22:77" + "src": "6195:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6219:7:77" + "src": "6219:7:18" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "6174:20:77" + "src": "6174:20:18" }, "nodeType": "YulFunctionCall", - "src": "6174:53:77" + "src": "6174:53:18" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "6164:6:77" + "src": "6164:6:18" } ] } @@ -6614,13 +6659,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5679:9:77", + "src": "5679:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "5690:7:77", + "src": "5690:7:18", "type": "" } ], @@ -6628,42 +6673,42 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "5702:6:77", + "src": "5702:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "5710:6:77", + "src": "5710:6:18", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "5718:6:77", + "src": "5718:6:18", "type": "" } ], - "src": "5625:619:77" + "src": "5625:619:18" }, { "body": { "nodeType": "YulBlock", - "src": "6295:32:77", + "src": "6295:32:18", "statements": [ { "nodeType": "YulAssignment", - "src": "6305:16:77", + "src": "6305:16:18", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "6316:5:77" + "src": "6316:5:18" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "6305:7:77" + "src": "6305:7:18" } ] } @@ -6675,7 +6720,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6277:5:77", + "src": "6277:5:18", "type": "" } ], @@ -6683,21 +6728,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "6287:7:77", + "src": "6287:7:18", "type": "" } ], - "src": "6250:77:77" + "src": "6250:77:18" }, { "body": { "nodeType": "YulBlock", - "src": "6376:79:77", + "src": "6376:79:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6433:16:77", + "src": "6433:16:18", "statements": [ { "expression": { @@ -6705,14 +6750,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6442:1:77", + "src": "6442:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6445:1:77", + "src": "6445:1:18", "type": "", "value": "0" } @@ -6720,13 +6765,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6435:6:77" + "src": "6435:6:18" }, "nodeType": "YulFunctionCall", - "src": "6435:12:77" + "src": "6435:12:18" }, "nodeType": "YulExpressionStatement", - "src": "6435:12:77" + "src": "6435:12:18" } ] }, @@ -6737,44 +6782,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "6399:5:77" + "src": "6399:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6424:5:77" + "src": "6424:5:18" } ], "functionName": { "name": "cleanup_t_bytes32", "nodeType": "YulIdentifier", - "src": "6406:17:77" + "src": "6406:17:18" }, "nodeType": "YulFunctionCall", - "src": "6406:24:77" + "src": "6406:24:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "6396:2:77" + "src": "6396:2:18" }, "nodeType": "YulFunctionCall", - "src": "6396:35:77" + "src": "6396:35:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "6389:6:77" + "src": "6389:6:18" }, "nodeType": "YulFunctionCall", - "src": "6389:43:77" + "src": "6389:43:18" }, "nodeType": "YulIf", - "src": "6386:63:77" + "src": "6386:63:18" } ] }, @@ -6784,41 +6829,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6369:5:77", + "src": "6369:5:18", "type": "" } ], - "src": "6333:122:77" + "src": "6333:122:18" }, { "body": { "nodeType": "YulBlock", - "src": "6513:87:77", + "src": "6513:87:18", "statements": [ { "nodeType": "YulAssignment", - "src": "6523:29:77", + "src": "6523:29:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "6545:6:77" + "src": "6545:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "6532:12:77" + "src": "6532:12:18" }, "nodeType": "YulFunctionCall", - "src": "6532:20:77" + "src": "6532:20:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6523:5:77" + "src": "6523:5:18" } ] }, @@ -6828,19 +6873,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "6588:5:77" + "src": "6588:5:18" } ], "functionName": { "name": "validator_revert_t_bytes32", "nodeType": "YulIdentifier", - "src": "6561:26:77" + "src": "6561:26:18" }, "nodeType": "YulFunctionCall", - "src": "6561:33:77" + "src": "6561:33:18" }, "nodeType": "YulExpressionStatement", - "src": "6561:33:77" + "src": "6561:33:18" } ] }, @@ -6850,13 +6895,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6491:6:77", + "src": "6491:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "6499:3:77", + "src": "6499:3:18", "type": "" } ], @@ -6864,21 +6909,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6507:5:77", + "src": "6507:5:18", "type": "" } ], - "src": "6461:139:77" + "src": "6461:139:18" }, { "body": { "nodeType": "YulBlock", - "src": "6672:263:77", + "src": "6672:263:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6718:83:77", + "src": "6718:83:18", "statements": [ { "expression": { @@ -6886,13 +6931,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "6720:77:77" + "src": "6720:77:18" }, "nodeType": "YulFunctionCall", - "src": "6720:79:77" + "src": "6720:79:18" }, "nodeType": "YulExpressionStatement", - "src": "6720:79:77" + "src": "6720:79:18" } ] }, @@ -6903,26 +6948,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6693:7:77" + "src": "6693:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6702:9:77" + "src": "6702:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "6689:3:77" + "src": "6689:3:18" }, "nodeType": "YulFunctionCall", - "src": "6689:23:77" + "src": "6689:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6714:2:77", + "src": "6714:2:18", "type": "", "value": "32" } @@ -6930,25 +6975,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "6685:3:77" + "src": "6685:3:18" }, "nodeType": "YulFunctionCall", - "src": "6685:32:77" + "src": "6685:32:18" }, "nodeType": "YulIf", - "src": "6682:119:77" + "src": "6682:119:18" }, { "nodeType": "YulBlock", - "src": "6811:117:77", + "src": "6811:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6826:15:77", + "src": "6826:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6840:1:77", + "src": "6840:1:18", "type": "", "value": "0" }, @@ -6956,14 +7001,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6830:6:77", + "src": "6830:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6855:63:77", + "src": "6855:63:18", "value": { "arguments": [ { @@ -6971,41 +7016,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6890:9:77" + "src": "6890:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "6901:6:77" + "src": "6901:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6886:3:77" + "src": "6886:3:18" }, "nodeType": "YulFunctionCall", - "src": "6886:22:77" + "src": "6886:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6910:7:77" + "src": "6910:7:18" } ], "functionName": { "name": "abi_decode_t_bytes32", "nodeType": "YulIdentifier", - "src": "6865:20:77" + "src": "6865:20:18" }, "nodeType": "YulFunctionCall", - "src": "6865:53:77" + "src": "6865:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "6855:6:77" + "src": "6855:6:18" } ] } @@ -7019,13 +7064,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "6642:9:77", + "src": "6642:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "6653:7:77", + "src": "6653:7:18", "type": "" } ], @@ -7033,16 +7078,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "6665:6:77", + "src": "6665:6:18", "type": "" } ], - "src": "6606:329:77" + "src": "6606:329:18" }, { "body": { "nodeType": "YulBlock", - "src": "7006:53:77", + "src": "7006:53:18", "statements": [ { "expression": { @@ -7050,35 +7095,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "7023:3:77" + "src": "7023:3:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "7046:5:77" + "src": "7046:5:18" } ], "functionName": { "name": "cleanup_t_bytes32", "nodeType": "YulIdentifier", - "src": "7028:17:77" + "src": "7028:17:18" }, "nodeType": "YulFunctionCall", - "src": "7028:24:77" + "src": "7028:24:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7016:6:77" + "src": "7016:6:18" }, "nodeType": "YulFunctionCall", - "src": "7016:37:77" + "src": "7016:37:18" }, "nodeType": "YulExpressionStatement", - "src": "7016:37:77" + "src": "7016:37:18" } ] }, @@ -7088,37 +7133,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6994:5:77", + "src": "6994:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "7001:3:77", + "src": "7001:3:18", "type": "" } ], - "src": "6941:118:77" + "src": "6941:118:18" }, { "body": { "nodeType": "YulBlock", - "src": "7163:124:77", + "src": "7163:124:18", "statements": [ { "nodeType": "YulAssignment", - "src": "7173:26:77", + "src": "7173:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7185:9:77" + "src": "7185:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7196:2:77", + "src": "7196:2:18", "type": "", "value": "32" } @@ -7126,16 +7171,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7181:3:77" + "src": "7181:3:18" }, "nodeType": "YulFunctionCall", - "src": "7181:18:77" + "src": "7181:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "7173:4:77" + "src": "7173:4:18" } ] }, @@ -7145,19 +7190,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "7253:6:77" + "src": "7253:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7266:9:77" + "src": "7266:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7277:1:77", + "src": "7277:1:18", "type": "", "value": "0" } @@ -7165,22 +7210,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7262:3:77" + "src": "7262:3:18" }, "nodeType": "YulFunctionCall", - "src": "7262:17:77" + "src": "7262:17:18" } ], "functionName": { "name": "abi_encode_t_bytes32_to_t_bytes32_fromStack", "nodeType": "YulIdentifier", - "src": "7209:43:77" + "src": "7209:43:18" }, "nodeType": "YulFunctionCall", - "src": "7209:71:77" + "src": "7209:71:18" }, "nodeType": "YulExpressionStatement", - "src": "7209:71:77" + "src": "7209:71:18" } ] }, @@ -7190,13 +7235,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "7135:9:77", + "src": "7135:9:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "7147:6:77", + "src": "7147:6:18", "type": "" } ], @@ -7204,21 +7249,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "7158:4:77", + "src": "7158:4:18", "type": "" } ], - "src": "7065:222:77" + "src": "7065:222:18" }, { "body": { "nodeType": "YulBlock", - "src": "7376:391:77", + "src": "7376:391:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "7422:83:77", + "src": "7422:83:18", "statements": [ { "expression": { @@ -7226,13 +7271,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "7424:77:77" + "src": "7424:77:18" }, "nodeType": "YulFunctionCall", - "src": "7424:79:77" + "src": "7424:79:18" }, "nodeType": "YulExpressionStatement", - "src": "7424:79:77" + "src": "7424:79:18" } ] }, @@ -7243,26 +7288,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "7397:7:77" + "src": "7397:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7406:9:77" + "src": "7406:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "7393:3:77" + "src": "7393:3:18" }, "nodeType": "YulFunctionCall", - "src": "7393:23:77" + "src": "7393:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7418:2:77", + "src": "7418:2:18", "type": "", "value": "64" } @@ -7270,25 +7315,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "7389:3:77" + "src": "7389:3:18" }, "nodeType": "YulFunctionCall", - "src": "7389:32:77" + "src": "7389:32:18" }, "nodeType": "YulIf", - "src": "7386:119:77" + "src": "7386:119:18" }, { "nodeType": "YulBlock", - "src": "7515:117:77", + "src": "7515:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "7530:15:77", + "src": "7530:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "7544:1:77", + "src": "7544:1:18", "type": "", "value": "0" }, @@ -7296,14 +7341,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "7534:6:77", + "src": "7534:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "7559:63:77", + "src": "7559:63:18", "value": { "arguments": [ { @@ -7311,41 +7356,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7594:9:77" + "src": "7594:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "7605:6:77" + "src": "7605:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7590:3:77" + "src": "7590:3:18" }, "nodeType": "YulFunctionCall", - "src": "7590:22:77" + "src": "7590:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "7614:7:77" + "src": "7614:7:18" } ], "functionName": { "name": "abi_decode_t_bytes32", "nodeType": "YulIdentifier", - "src": "7569:20:77" + "src": "7569:20:18" }, "nodeType": "YulFunctionCall", - "src": "7569:53:77" + "src": "7569:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "7559:6:77" + "src": "7559:6:18" } ] } @@ -7353,15 +7398,15 @@ }, { "nodeType": "YulBlock", - "src": "7642:118:77", + "src": "7642:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "7657:16:77", + "src": "7657:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "7671:2:77", + "src": "7671:2:18", "type": "", "value": "32" }, @@ -7369,14 +7414,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "7661:6:77", + "src": "7661:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "7687:63:77", + "src": "7687:63:18", "value": { "arguments": [ { @@ -7384,41 +7429,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "7722:9:77" + "src": "7722:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "7733:6:77" + "src": "7733:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7718:3:77" + "src": "7718:3:18" }, "nodeType": "YulFunctionCall", - "src": "7718:22:77" + "src": "7718:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "7742:7:77" + "src": "7742:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "7697:20:77" + "src": "7697:20:18" }, "nodeType": "YulFunctionCall", - "src": "7697:53:77" + "src": "7697:53:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "7687:6:77" + "src": "7687:6:18" } ] } @@ -7432,13 +7477,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "7338:9:77", + "src": "7338:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "7349:7:77", + "src": "7349:7:18", "type": "" } ], @@ -7446,27 +7491,959 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "7361:6:77", + "src": "7361:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "7369:6:77", + "src": "7369:6:18", "type": "" } ], - "src": "7293:474:77" + "src": "7293:474:18" }, { "body": { "nodeType": "YulBlock", - "src": "7813:76:77", + "src": "7847:40:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7858:22:18", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7874:5:18" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7868:5:18" + }, + "nodeType": "YulFunctionCall", + "src": "7868:12:18" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "7858:6:18" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7830:5:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "7840:6:18", + "type": "" + } + ], + "src": "7773:114:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8004:73:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8021:3:18" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8026:6:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8014:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "8014:19:18" + }, + "nodeType": "YulExpressionStatement", + "src": "8014:19:18" + }, + { + "nodeType": "YulAssignment", + "src": "8042:29:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8061:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8066:4:18", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8057:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "8057:14:18" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "8042:11:18" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "7976:3:18", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "7981:6:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "7992:11:18", + "type": "" + } + ], + "src": "7893:184:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8155:60:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8165:11:18", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "8173:3:18" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8165:4:18" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8186:22:18", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "8198:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8203:4:18", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8194:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "8194:14:18" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8186:4:18" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "8142:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "8150:4:18", + "type": "" + } + ], + "src": "8083:132:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8276:53:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8293:3:18" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8316:5:18" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "8298:17:18" + }, + "nodeType": "YulFunctionCall", + "src": "8298:24:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8286:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "8286:37:18" + }, + "nodeType": "YulExpressionStatement", + "src": "8286:37:18" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "8264:5:18", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "8271:3:18", + "type": "" + } + ], + "src": "8221:108:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8415:99:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "8459:6:18" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8467:3:18" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "8425:33:18" + }, + "nodeType": "YulFunctionCall", + "src": "8425:46:18" + }, + "nodeType": "YulExpressionStatement", + "src": "8425:46:18" + }, + { + "nodeType": "YulAssignment", + "src": "8480:28:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8498:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8503:4:18", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8494:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "8494:14:18" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "8480:10:18" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "8388:6:18", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "8396:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "8404:10:18", + "type": "" + } + ], + "src": "8335:179:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8595:38:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8605:22:18", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "8617:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8622:4:18", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8613:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "8613:14:18" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "8605:4:18" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "8582:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "8590:4:18", + "type": "" + } + ], + "src": "8520:113:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8793:608:18", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8803:68:18", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8865:5:18" + } + ], + "functionName": { + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "8817:47:18" + }, + "nodeType": "YulFunctionCall", + "src": "8817:54:18" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8807:6:18", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8880:93:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8961:3:18" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8966:6:18" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "8887:73:18" + }, + "nodeType": "YulFunctionCall", + "src": "8887:86:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8880:3:18" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8982:71:18", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9047:5:18" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "8997:49:18" + }, + "nodeType": "YulFunctionCall", + "src": "8997:56:18" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "8986:7:18", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9062:21:18", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "9076:7:18" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "9066:6:18", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9152:224:18", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9166:34:18", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "9193:6:18" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9187:5:18" + }, + "nodeType": "YulFunctionCall", + "src": "9187:13:18" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "9170:13:18", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9213:70:18", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "9264:13:18" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9279:3:18" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "9220:43:18" + }, + "nodeType": "YulFunctionCall", + "src": "9220:63:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9213:3:18" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9296:70:18", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "9359:6:18" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "9306:52:18" + }, + "nodeType": "YulFunctionCall", + "src": "9306:60:18" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "9296:6:18" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "9114:1:18" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9117:6:18" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "9111:2:18" + }, + "nodeType": "YulFunctionCall", + "src": "9111:13:18" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "9125:18:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9127:14:18", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "9136:1:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9139:1:18", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9132:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "9132:9:18" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "9127:1:18" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "9096:14:18", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9098:10:18", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9107:1:18", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "9102:1:18", + "type": "" + } + ] + } + ] + }, + "src": "9092:284:18" + }, + { + "nodeType": "YulAssignment", + "src": "9385:10:18", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9392:3:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9385:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "8772:5:18", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "8779:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "8788:3:18", + "type": "" + } + ], + "src": "8669:732:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9555:225:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9565:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9577:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9588:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9573:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "9573:18:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9565:4:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9612:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9623:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9608:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "9608:17:18" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9631:4:18" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9637:9:18" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9627:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "9627:20:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9601:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "9601:47:18" + }, + "nodeType": "YulExpressionStatement", + "src": "9601:47:18" + }, + { + "nodeType": "YulAssignment", + "src": "9657:116:18", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "9759:6:18" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9768:4:18" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "9665:93:18" + }, + "nodeType": "YulFunctionCall", + "src": "9665:108:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9657:4:18" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9527:9:18", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "9539:6:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9550:4:18", + "type": "" + } + ], + "src": "9407:373:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9826:76:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "7867:16:77", + "src": "9880:16:18", "statements": [ { "expression": { @@ -7474,14 +8451,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7876:1:77", + "src": "9889:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7879:1:77", + "src": "9892:1:18", "type": "", "value": "0" } @@ -7489,13 +8466,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7869:6:77" + "src": "9882:6:18" }, "nodeType": "YulFunctionCall", - "src": "7869:12:77" + "src": "9882:12:18" }, "nodeType": "YulExpressionStatement", - "src": "7869:12:77" + "src": "9882:12:18" } ] }, @@ -7506,44 +8483,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "7836:5:77" + "src": "9849:5:18" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "7858:5:77" + "src": "9871:5:18" } ], "functionName": { "name": "cleanup_t_bool", "nodeType": "YulIdentifier", - "src": "7843:14:77" + "src": "9856:14:18" }, "nodeType": "YulFunctionCall", - "src": "7843:21:77" + "src": "9856:21:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "7833:2:77" + "src": "9846:2:18" }, "nodeType": "YulFunctionCall", - "src": "7833:32:77" + "src": "9846:32:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "7826:6:77" + "src": "9839:6:18" }, "nodeType": "YulFunctionCall", - "src": "7826:40:77" + "src": "9839:40:18" }, "nodeType": "YulIf", - "src": "7823:60:77" + "src": "9836:60:18" } ] }, @@ -7553,41 +8530,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "7806:5:77", + "src": "9819:5:18", "type": "" } ], - "src": "7773:116:77" + "src": "9786:116:18" }, { "body": { "nodeType": "YulBlock", - "src": "7944:84:77", + "src": "9957:84:18", "statements": [ { "nodeType": "YulAssignment", - "src": "7954:29:77", + "src": "9967:29:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "7976:6:77" + "src": "9989:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "7963:12:77" + "src": "9976:12:18" }, "nodeType": "YulFunctionCall", - "src": "7963:20:77" + "src": "9976:20:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "7954:5:77" + "src": "9967:5:18" } ] }, @@ -7597,19 +8574,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "8016:5:77" + "src": "10029:5:18" } ], "functionName": { "name": "validator_revert_t_bool", "nodeType": "YulIdentifier", - "src": "7992:23:77" + "src": "10005:23:18" }, "nodeType": "YulFunctionCall", - "src": "7992:30:77" + "src": "10005:30:18" }, "nodeType": "YulExpressionStatement", - "src": "7992:30:77" + "src": "10005:30:18" } ] }, @@ -7619,13 +8596,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "7922:6:77", + "src": "9935:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "7930:3:77", + "src": "9943:3:18", "type": "" } ], @@ -7633,21 +8610,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "7938:5:77", + "src": "9951:5:18", "type": "" } ], - "src": "7895:133:77" + "src": "9908:133:18" }, { "body": { "nodeType": "YulBlock", - "src": "8114:388:77", + "src": "10127:388:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "8160:83:77", + "src": "10173:83:18", "statements": [ { "expression": { @@ -7655,13 +8632,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "8162:77:77" + "src": "10175:77:18" }, "nodeType": "YulFunctionCall", - "src": "8162:79:77" + "src": "10175:79:18" }, "nodeType": "YulExpressionStatement", - "src": "8162:79:77" + "src": "10175:79:18" } ] }, @@ -7672,26 +8649,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "8135:7:77" + "src": "10148:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8144:9:77" + "src": "10157:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "8131:3:77" + "src": "10144:3:18" }, "nodeType": "YulFunctionCall", - "src": "8131:23:77" + "src": "10144:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8156:2:77", + "src": "10169:2:18", "type": "", "value": "64" } @@ -7699,25 +8676,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "8127:3:77" + "src": "10140:3:18" }, "nodeType": "YulFunctionCall", - "src": "8127:32:77" + "src": "10140:32:18" }, "nodeType": "YulIf", - "src": "8124:119:77" + "src": "10137:119:18" }, { "nodeType": "YulBlock", - "src": "8253:117:77", + "src": "10266:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "8268:15:77", + "src": "10281:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "8282:1:77", + "src": "10295:1:18", "type": "", "value": "0" }, @@ -7725,14 +8702,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "8272:6:77", + "src": "10285:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "8297:63:77", + "src": "10310:63:18", "value": { "arguments": [ { @@ -7740,41 +8717,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8332:9:77" + "src": "10345:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "8343:6:77" + "src": "10356:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8328:3:77" + "src": "10341:3:18" }, "nodeType": "YulFunctionCall", - "src": "8328:22:77" + "src": "10341:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "8352:7:77" + "src": "10365:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "8307:20:77" + "src": "10320:20:18" }, "nodeType": "YulFunctionCall", - "src": "8307:53:77" + "src": "10320:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "8297:6:77" + "src": "10310:6:18" } ] } @@ -7782,15 +8759,15 @@ }, { "nodeType": "YulBlock", - "src": "8380:115:77", + "src": "10393:115:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "8395:16:77", + "src": "10408:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "8409:2:77", + "src": "10422:2:18", "type": "", "value": "32" }, @@ -7798,14 +8775,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "8399:6:77", + "src": "10412:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "8425:60:77", + "src": "10438:60:18", "value": { "arguments": [ { @@ -7813,41 +8790,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "8457:9:77" + "src": "10470:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "8468:6:77" + "src": "10481:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8453:3:77" + "src": "10466:3:18" }, "nodeType": "YulFunctionCall", - "src": "8453:22:77" + "src": "10466:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "8477:7:77" + "src": "10490:7:18" } ], "functionName": { "name": "abi_decode_t_bool", "nodeType": "YulIdentifier", - "src": "8435:17:77" + "src": "10448:17:18" }, "nodeType": "YulFunctionCall", - "src": "8435:50:77" + "src": "10448:50:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "8425:6:77" + "src": "10438:6:18" } ] } @@ -7861,13 +8838,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "8076:9:77", + "src": "10089:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "8087:7:77", + "src": "10100:7:18", "type": "" } ], @@ -7875,22 +8852,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "8099:6:77", + "src": "10112:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "8107:6:77", + "src": "10120:6:18", "type": "" } ], - "src": "8034:468:77" + "src": "10047:468:18" }, { "body": { "nodeType": "YulBlock", - "src": "8597:28:77", + "src": "10610:28:18", "statements": [ { "expression": { @@ -7898,14 +8875,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8614:1:77", + "src": "10627:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8617:1:77", + "src": "10630:1:18", "type": "", "value": "0" } @@ -7913,24 +8890,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8607:6:77" + "src": "10620:6:18" }, "nodeType": "YulFunctionCall", - "src": "8607:12:77" + "src": "10620:12:18" }, "nodeType": "YulExpressionStatement", - "src": "8607:12:77" + "src": "10620:12:18" } ] }, "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulFunctionDefinition", - "src": "8508:117:77" + "src": "10521:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "8720:28:77", + "src": "10733:28:18", "statements": [ { "expression": { @@ -7938,14 +8915,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8737:1:77", + "src": "10750:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8740:1:77", + "src": "10753:1:18", "type": "", "value": "0" } @@ -7953,24 +8930,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8730:6:77" + "src": "10743:6:18" }, "nodeType": "YulFunctionCall", - "src": "8730:12:77" + "src": "10743:12:18" }, "nodeType": "YulExpressionStatement", - "src": "8730:12:77" + "src": "10743:12:18" } ] }, "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulFunctionDefinition", - "src": "8631:117:77" + "src": "10644:117:18" }, { "body": { "nodeType": "YulBlock", - "src": "8782:152:77", + "src": "10795:152:18", "statements": [ { "expression": { @@ -7978,14 +8955,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8799:1:77", + "src": "10812:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8802:77:77", + "src": "10815:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -7993,13 +8970,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8792:6:77" + "src": "10805:6:18" }, "nodeType": "YulFunctionCall", - "src": "8792:88:77" + "src": "10805:88:18" }, "nodeType": "YulExpressionStatement", - "src": "8792:88:77" + "src": "10805:88:18" }, { "expression": { @@ -8007,14 +8984,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8896:1:77", + "src": "10909:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8899:4:77", + "src": "10912:4:18", "type": "", "value": "0x41" } @@ -8022,13 +8999,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8889:6:77" + "src": "10902:6:18" }, "nodeType": "YulFunctionCall", - "src": "8889:15:77" + "src": "10902:15:18" }, "nodeType": "YulExpressionStatement", - "src": "8889:15:77" + "src": "10902:15:18" }, { "expression": { @@ -8036,14 +9013,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "8920:1:77", + "src": "10933:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8923:4:77", + "src": "10936:4:18", "type": "", "value": "0x24" } @@ -8051,65 +9028,65 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "8913:6:77" + "src": "10926:6:18" }, "nodeType": "YulFunctionCall", - "src": "8913:15:77" + "src": "10926:15:18" }, "nodeType": "YulExpressionStatement", - "src": "8913:15:77" + "src": "10926:15:18" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "8754:180:77" + "src": "10767:180:18" }, { "body": { "nodeType": "YulBlock", - "src": "8983:238:77", + "src": "10996:238:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "8993:58:77", + "src": "11006:58:18", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "9015:6:77" + "src": "11028:6:18" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "9045:4:77" + "src": "11058:4:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "9023:21:77" + "src": "11036:21:18" }, "nodeType": "YulFunctionCall", - "src": "9023:27:77" + "src": "11036:27:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9011:3:77" + "src": "11024:3:18" }, "nodeType": "YulFunctionCall", - "src": "9011:40:77" + "src": "11024:40:18" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "8997:10:77", + "src": "11010:10:18", "type": "" } ] @@ -8117,7 +9094,7 @@ { "body": { "nodeType": "YulBlock", - "src": "9162:22:77", + "src": "11175:22:18", "statements": [ { "expression": { @@ -8125,13 +9102,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "9164:16:77" + "src": "11177:16:18" }, "nodeType": "YulFunctionCall", - "src": "9164:18:77" + "src": "11177:18:18" }, "nodeType": "YulExpressionStatement", - "src": "9164:18:77" + "src": "11177:18:18" } ] }, @@ -8142,12 +9119,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "9105:10:77" + "src": "11118:10:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9117:18:77", + "src": "11130:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -8155,43 +9132,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "9102:2:77" + "src": "11115:2:18" }, "nodeType": "YulFunctionCall", - "src": "9102:34:77" + "src": "11115:34:18" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "9141:10:77" + "src": "11154:10:18" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "9153:6:77" + "src": "11166:6:18" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "9138:2:77" + "src": "11151:2:18" }, "nodeType": "YulFunctionCall", - "src": "9138:22:77" + "src": "11151:22:18" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "9099:2:77" + "src": "11112:2:18" }, "nodeType": "YulFunctionCall", - "src": "9099:62:77" + "src": "11112:62:18" }, "nodeType": "YulIf", - "src": "9096:88:77" + "src": "11109:88:18" }, { "expression": { @@ -8199,26 +9176,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "9200:2:77", + "src": "11213:2:18", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "9204:10:77" + "src": "11217:10:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9193:6:77" + "src": "11206:6:18" }, "nodeType": "YulFunctionCall", - "src": "9193:22:77" + "src": "11206:22:18" }, "nodeType": "YulExpressionStatement", - "src": "9193:22:77" + "src": "11206:22:18" } ] }, @@ -8228,41 +9205,41 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "8969:6:77", + "src": "10982:6:18", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "8977:4:77", + "src": "10990:4:18", "type": "" } ], - "src": "8940:281:77" + "src": "10953:281:18" }, { "body": { "nodeType": "YulBlock", - "src": "9268:88:77", + "src": "11281:88:18", "statements": [ { "nodeType": "YulAssignment", - "src": "9278:30:77", + "src": "11291:30:18", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "9288:18:77" + "src": "11301:18:18" }, "nodeType": "YulFunctionCall", - "src": "9288:20:77" + "src": "11301:20:18" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "9278:6:77" + "src": "11291:6:18" } ] }, @@ -8272,24 +9249,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "9337:6:77" + "src": "11350:6:18" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "9345:4:77" + "src": "11358:4:18" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "9317:19:77" + "src": "11330:19:18" }, "nodeType": "YulFunctionCall", - "src": "9317:33:77" + "src": "11330:33:18" }, "nodeType": "YulExpressionStatement", - "src": "9317:33:77" + "src": "11330:33:18" } ] }, @@ -8299,7 +9276,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "9252:4:77", + "src": "11265:4:18", "type": "" } ], @@ -8307,21 +9284,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "9261:6:77", + "src": "11274:6:18", "type": "" } ], - "src": "9227:129:77" + "src": "11240:129:18" }, { "body": { "nodeType": "YulBlock", - "src": "9428:241:77", + "src": "11441:241:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "9533:22:77", + "src": "11546:22:18", "statements": [ { "expression": { @@ -8329,13 +9306,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "9535:16:77" + "src": "11548:16:18" }, "nodeType": "YulFunctionCall", - "src": "9535:18:77" + "src": "11548:18:18" }, "nodeType": "YulExpressionStatement", - "src": "9535:18:77" + "src": "11548:18:18" } ] }, @@ -8344,12 +9321,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "9505:6:77" + "src": "11518:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9513:18:77", + "src": "11526:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -8357,55 +9334,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "9502:2:77" + "src": "11515:2:18" }, "nodeType": "YulFunctionCall", - "src": "9502:30:77" + "src": "11515:30:18" }, "nodeType": "YulIf", - "src": "9499:56:77" + "src": "11512:56:18" }, { "nodeType": "YulAssignment", - "src": "9565:37:77", + "src": "11578:37:18", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "9595:6:77" + "src": "11608:6:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "9573:21:77" + "src": "11586:21:18" }, "nodeType": "YulFunctionCall", - "src": "9573:29:77" + "src": "11586:29:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "9565:4:77" + "src": "11578:4:18" } ] }, { "nodeType": "YulAssignment", - "src": "9639:23:77", + "src": "11652:23:18", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "9651:4:77" + "src": "11664:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9657:4:77", + "src": "11670:4:18", "type": "", "value": "0x20" } @@ -8413,16 +9390,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9647:3:77" + "src": "11660:3:18" }, "nodeType": "YulFunctionCall", - "src": "9647:15:77" + "src": "11660:15:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "9639:4:77" + "src": "11652:4:18" } ] } @@ -8434,7 +9411,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "9412:6:77", + "src": "11425:6:18", "type": "" } ], @@ -8442,16 +9419,16 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "9423:4:77", + "src": "11436:4:18", "type": "" } ], - "src": "9362:307:77" + "src": "11375:307:18" }, { "body": { "nodeType": "YulBlock", - "src": "9726:103:77", + "src": "11739:103:18", "statements": [ { "expression": { @@ -8459,29 +9436,29 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "9749:3:77" + "src": "11762:3:18" }, { "name": "src", "nodeType": "YulIdentifier", - "src": "9754:3:77" + "src": "11767:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "9759:6:77" + "src": "11772:6:18" } ], "functionName": { "name": "calldatacopy", "nodeType": "YulIdentifier", - "src": "9736:12:77" + "src": "11749:12:18" }, "nodeType": "YulFunctionCall", - "src": "9736:30:77" + "src": "11749:30:18" }, "nodeType": "YulExpressionStatement", - "src": "9736:30:77" + "src": "11749:30:18" }, { "expression": { @@ -8491,26 +9468,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "9807:3:77" + "src": "11820:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "9812:6:77" + "src": "11825:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9803:3:77" + "src": "11816:3:18" }, "nodeType": "YulFunctionCall", - "src": "9803:16:77" + "src": "11816:16:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9821:1:77", + "src": "11834:1:18", "type": "", "value": "0" } @@ -8518,13 +9495,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "9796:6:77" + "src": "11809:6:18" }, "nodeType": "YulFunctionCall", - "src": "9796:27:77" + "src": "11809:27:18" }, "nodeType": "YulExpressionStatement", - "src": "9796:27:77" + "src": "11809:27:18" } ] }, @@ -8534,32 +9511,32 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "9708:3:77", + "src": "11721:3:18", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "9713:3:77", + "src": "11726:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "9718:6:77", + "src": "11731:6:18", "type": "" } ], - "src": "9675:154:77" + "src": "11688:154:18" }, { "body": { "nodeType": "YulBlock", - "src": "9918:327:77", + "src": "11931:327:18", "statements": [ { "nodeType": "YulAssignment", - "src": "9928:74:77", + "src": "11941:74:18", "value": { "arguments": [ { @@ -8567,31 +9544,31 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "9994:6:77" + "src": "12007:6:18" } ], "functionName": { "name": "array_allocation_size_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "9953:40:77" + "src": "11966:40:18" }, "nodeType": "YulFunctionCall", - "src": "9953:48:77" + "src": "11966:48:18" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "9937:15:77" + "src": "11950:15:18" }, "nodeType": "YulFunctionCall", - "src": "9937:65:77" + "src": "11950:65:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "9928:5:77" + "src": "11941:5:18" } ] }, @@ -8601,39 +9578,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "10018:5:77" + "src": "12031:5:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10025:6:77" + "src": "12038:6:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "10011:6:77" + "src": "12024:6:18" }, "nodeType": "YulFunctionCall", - "src": "10011:21:77" + "src": "12024:21:18" }, "nodeType": "YulExpressionStatement", - "src": "10011:21:77" + "src": "12024:21:18" }, { "nodeType": "YulVariableDeclaration", - "src": "10041:27:77", + "src": "12054:27:18", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "10056:5:77" + "src": "12069:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10063:4:77", + "src": "12076:4:18", "type": "", "value": "0x20" } @@ -8641,16 +9618,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10052:3:77" + "src": "12065:3:18" }, "nodeType": "YulFunctionCall", - "src": "10052:16:77" + "src": "12065:16:18" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "10045:3:77", + "src": "12058:3:18", "type": "" } ] @@ -8658,7 +9635,7 @@ { "body": { "nodeType": "YulBlock", - "src": "10106:83:77", + "src": "12119:83:18", "statements": [ { "expression": { @@ -8666,13 +9643,13 @@ "functionName": { "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulIdentifier", - "src": "10108:77:77" + "src": "12121:77:18" }, "nodeType": "YulFunctionCall", - "src": "10108:79:77" + "src": "12121:79:18" }, "nodeType": "YulExpressionStatement", - "src": "10108:79:77" + "src": "12121:79:18" } ] }, @@ -8683,38 +9660,38 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "10087:3:77" + "src": "12100:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10092:6:77" + "src": "12105:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10083:3:77" + "src": "12096:3:18" }, "nodeType": "YulFunctionCall", - "src": "10083:16:77" + "src": "12096:16:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "10101:3:77" + "src": "12114:3:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "10080:2:77" + "src": "12093:2:18" }, "nodeType": "YulFunctionCall", - "src": "10080:25:77" + "src": "12093:25:18" }, "nodeType": "YulIf", - "src": "10077:112:77" + "src": "12090:112:18" }, { "expression": { @@ -8722,29 +9699,29 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "10222:3:77" + "src": "12235:3:18" }, { "name": "dst", "nodeType": "YulIdentifier", - "src": "10227:3:77" + "src": "12240:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10232:6:77" + "src": "12245:6:18" } ], "functionName": { "name": "copy_calldata_to_memory", "nodeType": "YulIdentifier", - "src": "10198:23:77" + "src": "12211:23:18" }, "nodeType": "YulFunctionCall", - "src": "10198:41:77" + "src": "12211:41:18" }, "nodeType": "YulExpressionStatement", - "src": "10198:41:77" + "src": "12211:41:18" } ] }, @@ -8754,19 +9731,19 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "9891:3:77", + "src": "11904:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "9896:6:77", + "src": "11909:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "9904:3:77", + "src": "11917:3:18", "type": "" } ], @@ -8774,21 +9751,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "9912:5:77", + "src": "11925:5:18", "type": "" } ], - "src": "9835:410:77" + "src": "11848:410:18" }, { "body": { "nodeType": "YulBlock", - "src": "10325:277:77", + "src": "12338:277:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "10374:83:77", + "src": "12387:83:18", "statements": [ { "expression": { @@ -8796,13 +9773,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "10376:77:77" + "src": "12389:77:18" }, "nodeType": "YulFunctionCall", - "src": "10376:79:77" + "src": "12389:79:18" }, "nodeType": "YulExpressionStatement", - "src": "10376:79:77" + "src": "12389:79:18" } ] }, @@ -8815,12 +9792,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "10353:6:77" + "src": "12366:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10361:4:77", + "src": "12374:4:18", "type": "", "value": "0x1f" } @@ -8828,68 +9805,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10349:3:77" + "src": "12362:3:18" }, "nodeType": "YulFunctionCall", - "src": "10349:17:77" + "src": "12362:17:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "10368:3:77" + "src": "12381:3:18" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "10345:3:77" + "src": "12358:3:18" }, "nodeType": "YulFunctionCall", - "src": "10345:27:77" + "src": "12358:27:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "10338:6:77" + "src": "12351:6:18" }, "nodeType": "YulFunctionCall", - "src": "10338:35:77" + "src": "12351:35:18" }, "nodeType": "YulIf", - "src": "10335:122:77" + "src": "12348:122:18" }, { "nodeType": "YulVariableDeclaration", - "src": "10466:34:77", + "src": "12479:34:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "10493:6:77" + "src": "12506:6:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "10480:12:77" + "src": "12493:12:18" }, "nodeType": "YulFunctionCall", - "src": "10480:20:77" + "src": "12493:20:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "10470:6:77", + "src": "12483:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "10509:87:77", + "src": "12522:87:18", "value": { "arguments": [ { @@ -8897,12 +9874,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "10569:6:77" + "src": "12582:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10577:4:77", + "src": "12590:4:18", "type": "", "value": "0x20" } @@ -8910,35 +9887,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10565:3:77" + "src": "12578:3:18" }, "nodeType": "YulFunctionCall", - "src": "10565:17:77" + "src": "12578:17:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "10584:6:77" + "src": "12597:6:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "10592:3:77" + "src": "12605:3:18" } ], "functionName": { "name": "abi_decode_available_length_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "10518:46:77" + "src": "12531:46:18" }, "nodeType": "YulFunctionCall", - "src": "10518:78:77" + "src": "12531:78:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "10509:5:77" + "src": "12522:5:18" } ] } @@ -8950,13 +9927,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "10303:6:77", + "src": "12316:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "10311:3:77", + "src": "12324:3:18", "type": "" } ], @@ -8964,21 +9941,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "10319:5:77", + "src": "12332:5:18", "type": "" } ], - "src": "10264:338:77" + "src": "12277:338:18" }, { "body": { "nodeType": "YulBlock", - "src": "10734:817:77", + "src": "12747:817:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "10781:83:77", + "src": "12794:83:18", "statements": [ { "expression": { @@ -8986,13 +9963,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "10783:77:77" + "src": "12796:77:18" }, "nodeType": "YulFunctionCall", - "src": "10783:79:77" + "src": "12796:79:18" }, "nodeType": "YulExpressionStatement", - "src": "10783:79:77" + "src": "12796:79:18" } ] }, @@ -9003,26 +9980,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10755:7:77" + "src": "12768:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10764:9:77" + "src": "12777:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "10751:3:77" + "src": "12764:3:18" }, "nodeType": "YulFunctionCall", - "src": "10751:23:77" + "src": "12764:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10776:3:77", + "src": "12789:3:18", "type": "", "value": "128" } @@ -9030,25 +10007,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "10747:3:77" + "src": "12760:3:18" }, "nodeType": "YulFunctionCall", - "src": "10747:33:77" + "src": "12760:33:18" }, "nodeType": "YulIf", - "src": "10744:120:77" + "src": "12757:120:18" }, { "nodeType": "YulBlock", - "src": "10874:117:77", + "src": "12887:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "10889:15:77", + "src": "12902:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "10903:1:77", + "src": "12916:1:18", "type": "", "value": "0" }, @@ -9056,14 +10033,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "10893:6:77", + "src": "12906:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "10918:63:77", + "src": "12931:63:18", "value": { "arguments": [ { @@ -9071,41 +10048,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10953:9:77" + "src": "12966:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "10964:6:77" + "src": "12977:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10949:3:77" + "src": "12962:3:18" }, "nodeType": "YulFunctionCall", - "src": "10949:22:77" + "src": "12962:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10973:7:77" + "src": "12986:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "10928:20:77" + "src": "12941:20:18" }, "nodeType": "YulFunctionCall", - "src": "10928:53:77" + "src": "12941:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "10918:6:77" + "src": "12931:6:18" } ] } @@ -9113,15 +10090,15 @@ }, { "nodeType": "YulBlock", - "src": "11001:118:77", + "src": "13014:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11016:16:77", + "src": "13029:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11030:2:77", + "src": "13043:2:18", "type": "", "value": "32" }, @@ -9129,14 +10106,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11020:6:77", + "src": "13033:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11046:63:77", + "src": "13059:63:18", "value": { "arguments": [ { @@ -9144,41 +10121,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11081:9:77" + "src": "13094:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11092:6:77" + "src": "13105:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11077:3:77" + "src": "13090:3:18" }, "nodeType": "YulFunctionCall", - "src": "11077:22:77" + "src": "13090:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11101:7:77" + "src": "13114:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "11056:20:77" + "src": "13069:20:18" }, "nodeType": "YulFunctionCall", - "src": "11056:53:77" + "src": "13069:53:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "11046:6:77" + "src": "13059:6:18" } ] } @@ -9186,15 +10163,15 @@ }, { "nodeType": "YulBlock", - "src": "11129:118:77", + "src": "13142:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11144:16:77", + "src": "13157:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11158:2:77", + "src": "13171:2:18", "type": "", "value": "64" }, @@ -9202,14 +10179,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11148:6:77", + "src": "13161:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11174:63:77", + "src": "13187:63:18", "value": { "arguments": [ { @@ -9217,41 +10194,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11209:9:77" + "src": "13222:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11220:6:77" + "src": "13233:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11205:3:77" + "src": "13218:3:18" }, "nodeType": "YulFunctionCall", - "src": "11205:22:77" + "src": "13218:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11229:7:77" + "src": "13242:7:18" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "11184:20:77" + "src": "13197:20:18" }, "nodeType": "YulFunctionCall", - "src": "11184:53:77" + "src": "13197:53:18" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "11174:6:77" + "src": "13187:6:18" } ] } @@ -9259,11 +10236,11 @@ }, { "nodeType": "YulBlock", - "src": "11257:287:77", + "src": "13270:287:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11272:46:77", + "src": "13285:46:18", "value": { "arguments": [ { @@ -9271,12 +10248,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11303:9:77" + "src": "13316:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11314:2:77", + "src": "13327:2:18", "type": "", "value": "96" } @@ -9284,25 +10261,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11299:3:77" + "src": "13312:3:18" }, "nodeType": "YulFunctionCall", - "src": "11299:18:77" + "src": "13312:18:18" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "11286:12:77" + "src": "13299:12:18" }, "nodeType": "YulFunctionCall", - "src": "11286:32:77" + "src": "13299:32:18" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "11276:6:77", + "src": "13289:6:18", "type": "" } ] @@ -9310,7 +10287,7 @@ { "body": { "nodeType": "YulBlock", - "src": "11365:83:77", + "src": "13378:83:18", "statements": [ { "expression": { @@ -9318,13 +10295,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "11367:77:77" + "src": "13380:77:18" }, "nodeType": "YulFunctionCall", - "src": "11367:79:77" + "src": "13380:79:18" }, "nodeType": "YulExpressionStatement", - "src": "11367:79:77" + "src": "13380:79:18" } ] }, @@ -9333,12 +10310,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "11337:6:77" + "src": "13350:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11345:18:77", + "src": "13358:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -9346,17 +10323,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "11334:2:77" + "src": "13347:2:18" }, "nodeType": "YulFunctionCall", - "src": "11334:30:77" + "src": "13347:30:18" }, "nodeType": "YulIf", - "src": "11331:117:77" + "src": "13344:117:18" }, { "nodeType": "YulAssignment", - "src": "11462:72:77", + "src": "13475:72:18", "value": { "arguments": [ { @@ -9364,41 +10341,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11506:9:77" + "src": "13519:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11517:6:77" + "src": "13530:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11502:3:77" + "src": "13515:3:18" }, "nodeType": "YulFunctionCall", - "src": "11502:22:77" + "src": "13515:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11526:7:77" + "src": "13539:7:18" } ], "functionName": { "name": "abi_decode_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "11472:29:77" + "src": "13485:29:18" }, "nodeType": "YulFunctionCall", - "src": "11472:62:77" + "src": "13485:62:18" }, "variableNames": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "11462:6:77" + "src": "13475:6:18" } ] } @@ -9412,13 +10389,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "10680:9:77", + "src": "12693:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "10691:7:77", + "src": "12704:7:18", "type": "" } ], @@ -9426,39 +10403,39 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "10703:6:77", + "src": "12716:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "10711:6:77", + "src": "12724:6:18", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "10719:6:77", + "src": "12732:6:18", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "10727:6:77", + "src": "12740:6:18", "type": "" } ], - "src": "10608:943:77" + "src": "12621:943:18" }, { "body": { "nodeType": "YulBlock", - "src": "11640:391:77", + "src": "13653:391:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "11686:83:77", + "src": "13699:83:18", "statements": [ { "expression": { @@ -9466,13 +10443,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "11688:77:77" + "src": "13701:77:18" }, "nodeType": "YulFunctionCall", - "src": "11688:79:77" + "src": "13701:79:18" }, "nodeType": "YulExpressionStatement", - "src": "11688:79:77" + "src": "13701:79:18" } ] }, @@ -9483,26 +10460,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11661:7:77" + "src": "13674:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11670:9:77" + "src": "13683:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "11657:3:77" + "src": "13670:3:18" }, "nodeType": "YulFunctionCall", - "src": "11657:23:77" + "src": "13670:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11682:2:77", + "src": "13695:2:18", "type": "", "value": "64" } @@ -9510,25 +10487,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "11653:3:77" + "src": "13666:3:18" }, "nodeType": "YulFunctionCall", - "src": "11653:32:77" + "src": "13666:32:18" }, "nodeType": "YulIf", - "src": "11650:119:77" + "src": "13663:119:18" }, { "nodeType": "YulBlock", - "src": "11779:117:77", + "src": "13792:117:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11794:15:77", + "src": "13807:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11808:1:77", + "src": "13821:1:18", "type": "", "value": "0" }, @@ -9536,14 +10513,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11798:6:77", + "src": "13811:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11823:63:77", + "src": "13836:63:18", "value": { "arguments": [ { @@ -9551,41 +10528,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11858:9:77" + "src": "13871:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11869:6:77" + "src": "13882:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11854:3:77" + "src": "13867:3:18" }, "nodeType": "YulFunctionCall", - "src": "11854:22:77" + "src": "13867:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11878:7:77" + "src": "13891:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "11833:20:77" + "src": "13846:20:18" }, "nodeType": "YulFunctionCall", - "src": "11833:53:77" + "src": "13846:53:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "11823:6:77" + "src": "13836:6:18" } ] } @@ -9593,15 +10570,15 @@ }, { "nodeType": "YulBlock", - "src": "11906:118:77", + "src": "13919:118:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11921:16:77", + "src": "13934:16:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11935:2:77", + "src": "13948:2:18", "type": "", "value": "32" }, @@ -9609,14 +10586,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11925:6:77", + "src": "13938:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11951:63:77", + "src": "13964:63:18", "value": { "arguments": [ { @@ -9624,41 +10601,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11986:9:77" + "src": "13999:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11997:6:77" + "src": "14010:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11982:3:77" + "src": "13995:3:18" }, "nodeType": "YulFunctionCall", - "src": "11982:22:77" + "src": "13995:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "12006:7:77" + "src": "14019:7:18" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "11961:20:77" + "src": "13974:20:18" }, "nodeType": "YulFunctionCall", - "src": "11961:53:77" + "src": "13974:53:18" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "11951:6:77" + "src": "13964:6:18" } ] } @@ -9672,13 +10649,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "11602:9:77", + "src": "13615:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "11613:7:77", + "src": "13626:7:18", "type": "" } ], @@ -9686,22 +10663,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "11625:6:77", + "src": "13638:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "11633:6:77", + "src": "13646:6:18", "type": "" } ], - "src": "11557:474:77" + "src": "13570:474:18" }, { "body": { "nodeType": "YulBlock", - "src": "12065:152:77", + "src": "14078:152:18", "statements": [ { "expression": { @@ -9709,14 +10686,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12082:1:77", + "src": "14095:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12085:77:77", + "src": "14098:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -9724,13 +10701,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12075:6:77" + "src": "14088:6:18" }, "nodeType": "YulFunctionCall", - "src": "12075:88:77" + "src": "14088:88:18" }, "nodeType": "YulExpressionStatement", - "src": "12075:88:77" + "src": "14088:88:18" }, { "expression": { @@ -9738,14 +10715,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12179:1:77", + "src": "14192:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12182:4:77", + "src": "14195:4:18", "type": "", "value": "0x22" } @@ -9753,13 +10730,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12172:6:77" + "src": "14185:6:18" }, "nodeType": "YulFunctionCall", - "src": "12172:15:77" + "src": "14185:15:18" }, "nodeType": "YulExpressionStatement", - "src": "12172:15:77" + "src": "14185:15:18" }, { "expression": { @@ -9767,14 +10744,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12203:1:77", + "src": "14216:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12206:4:77", + "src": "14219:4:18", "type": "", "value": "0x24" } @@ -9782,39 +10759,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "12196:6:77" + "src": "14209:6:18" }, "nodeType": "YulFunctionCall", - "src": "12196:15:77" + "src": "14209:15:18" }, "nodeType": "YulExpressionStatement", - "src": "12196:15:77" + "src": "14209:15:18" } ] }, "name": "panic_error_0x22", "nodeType": "YulFunctionDefinition", - "src": "12037:180:77" + "src": "14050:180:18" }, { "body": { "nodeType": "YulBlock", - "src": "12274:269:77", + "src": "14287:269:18", "statements": [ { "nodeType": "YulAssignment", - "src": "12284:22:77", + "src": "14297:22:18", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "12298:4:77" + "src": "14311:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12304:1:77", + "src": "14317:1:18", "type": "", "value": "2" } @@ -9822,33 +10799,33 @@ "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "12294:3:77" + "src": "14307:3:18" }, "nodeType": "YulFunctionCall", - "src": "12294:12:77" + "src": "14307:12:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12284:6:77" + "src": "14297:6:18" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "12315:38:77", + "src": "14328:38:18", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "12345:4:77" + "src": "14358:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12351:1:77", + "src": "14364:1:18", "type": "", "value": "1" } @@ -9856,16 +10833,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12341:3:77" + "src": "14354:3:18" }, "nodeType": "YulFunctionCall", - "src": "12341:12:77" + "src": "14354:12:18" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "12319:18:77", + "src": "14332:18:18", "type": "" } ] @@ -9873,22 +10850,22 @@ { "body": { "nodeType": "YulBlock", - "src": "12392:51:77", + "src": "14405:51:18", "statements": [ { "nodeType": "YulAssignment", - "src": "12406:27:77", + "src": "14419:27:18", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12420:6:77" + "src": "14433:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12428:4:77", + "src": "14441:4:18", "type": "", "value": "0x7f" } @@ -9896,16 +10873,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12416:3:77" + "src": "14429:3:18" }, "nodeType": "YulFunctionCall", - "src": "12416:17:77" + "src": "14429:17:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12406:6:77" + "src": "14419:6:18" } ] } @@ -9916,24 +10893,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "12372:18:77" + "src": "14385:18:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "12365:6:77" + "src": "14378:6:18" }, "nodeType": "YulFunctionCall", - "src": "12365:26:77" + "src": "14378:26:18" }, "nodeType": "YulIf", - "src": "12362:81:77" + "src": "14375:81:18" }, { "body": { "nodeType": "YulBlock", - "src": "12495:42:77", + "src": "14508:42:18", "statements": [ { "expression": { @@ -9941,13 +10918,13 @@ "functionName": { "name": "panic_error_0x22", "nodeType": "YulIdentifier", - "src": "12509:16:77" + "src": "14522:16:18" }, "nodeType": "YulFunctionCall", - "src": "12509:18:77" + "src": "14522:18:18" }, "nodeType": "YulExpressionStatement", - "src": "12509:18:77" + "src": "14522:18:18" } ] }, @@ -9956,19 +10933,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "12459:18:77" + "src": "14472:18:18" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12482:6:77" + "src": "14495:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12490:2:77", + "src": "14503:2:18", "type": "", "value": "32" } @@ -9976,22 +10953,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12479:2:77" + "src": "14492:2:18" }, "nodeType": "YulFunctionCall", - "src": "12479:14:77" + "src": "14492:14:18" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "12456:2:77" + "src": "14469:2:18" }, "nodeType": "YulFunctionCall", - "src": "12456:38:77" + "src": "14469:38:18" }, "nodeType": "YulIf", - "src": "12453:84:77" + "src": "14466:84:18" } ] }, @@ -10001,7 +10978,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "12258:4:77", + "src": "14271:4:18", "type": "" } ], @@ -10009,16 +10986,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "12267:6:77", + "src": "14280:6:18", "type": "" } ], - "src": "12223:320:77" + "src": "14236:320:18" }, { "body": { "nodeType": "YulBlock", - "src": "12655:114:77", + "src": "14668:114:18", "statements": [ { "expression": { @@ -10028,12 +11005,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "12677:6:77" + "src": "14690:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12685:1:77", + "src": "14698:1:18", "type": "", "value": "0" } @@ -10041,16 +11018,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12673:3:77" + "src": "14686:3:18" }, "nodeType": "YulFunctionCall", - "src": "12673:14:77" + "src": "14686:14:18" }, { "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", "kind": "string", "nodeType": "YulLiteral", - "src": "12689:34:77", + "src": "14702:34:18", "type": "", "value": "ERC721: approval to current owne" } @@ -10058,13 +11035,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12666:6:77" + "src": "14679:6:18" }, "nodeType": "YulFunctionCall", - "src": "12666:58:77" + "src": "14679:58:18" }, "nodeType": "YulExpressionStatement", - "src": "12666:58:77" + "src": "14679:58:18" }, { "expression": { @@ -10074,12 +11051,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "12745:6:77" + "src": "14758:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12753:2:77", + "src": "14766:2:18", "type": "", "value": "32" } @@ -10087,16 +11064,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12741:3:77" + "src": "14754:3:18" }, "nodeType": "YulFunctionCall", - "src": "12741:15:77" + "src": "14754:15:18" }, { "hexValue": "72", "kind": "string", "nodeType": "YulLiteral", - "src": "12758:3:77", + "src": "14771:3:18", "type": "", "value": "r" } @@ -10104,13 +11081,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12734:6:77" + "src": "14747:6:18" }, "nodeType": "YulFunctionCall", - "src": "12734:28:77" + "src": "14747:28:18" }, "nodeType": "YulExpressionStatement", - "src": "12734:28:77" + "src": "14747:28:18" } ] }, @@ -10120,31 +11097,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "12647:6:77", + "src": "14660:6:18", "type": "" } ], - "src": "12549:220:77" + "src": "14562:220:18" }, { "body": { "nodeType": "YulBlock", - "src": "12921:220:77", + "src": "14934:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "12931:74:77", + "src": "14944:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "12997:3:77" + "src": "15010:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13002:2:77", + "src": "15015:2:18", "type": "", "value": "33" } @@ -10152,16 +11129,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "12938:58:77" + "src": "14951:58:18" }, "nodeType": "YulFunctionCall", - "src": "12938:67:77" + "src": "14951:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "12931:3:77" + "src": "14944:3:18" } ] }, @@ -10171,34 +11148,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13103:3:77" + "src": "15116:3:18" } ], "functionName": { "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", "nodeType": "YulIdentifier", - "src": "13014:88:77" + "src": "15027:88:18" }, "nodeType": "YulFunctionCall", - "src": "13014:93:77" + "src": "15027:93:18" }, "nodeType": "YulExpressionStatement", - "src": "13014:93:77" + "src": "15027:93:18" }, { "nodeType": "YulAssignment", - "src": "13116:19:77", + "src": "15129:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13127:3:77" + "src": "15140:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13132:2:77", + "src": "15145:2:18", "type": "", "value": "64" } @@ -10206,16 +11183,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13123:3:77" + "src": "15136:3:18" }, "nodeType": "YulFunctionCall", - "src": "13123:12:77" + "src": "15136:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "13116:3:77" + "src": "15129:3:18" } ] } @@ -10227,7 +11204,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "12909:3:77", + "src": "14922:3:18", "type": "" } ], @@ -10235,31 +11212,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "12917:3:77", + "src": "14930:3:18", "type": "" } ], - "src": "12775:366:77" + "src": "14788:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "13318:248:77", + "src": "15331:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "13328:26:77", + "src": "15341:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13340:9:77" + "src": "15353:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13351:2:77", + "src": "15364:2:18", "type": "", "value": "32" } @@ -10267,16 +11244,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13336:3:77" + "src": "15349:3:18" }, "nodeType": "YulFunctionCall", - "src": "13336:18:77" + "src": "15349:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13328:4:77" + "src": "15341:4:18" } ] }, @@ -10288,12 +11265,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13375:9:77" + "src": "15388:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13386:1:77", + "src": "15399:1:18", "type": "", "value": "0" } @@ -10301,68 +11278,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13371:3:77" + "src": "15384:3:18" }, "nodeType": "YulFunctionCall", - "src": "13371:17:77" + "src": "15384:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13394:4:77" + "src": "15407:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13400:9:77" + "src": "15413:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "13390:3:77" + "src": "15403:3:18" }, "nodeType": "YulFunctionCall", - "src": "13390:20:77" + "src": "15403:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13364:6:77" + "src": "15377:6:18" }, "nodeType": "YulFunctionCall", - "src": "13364:47:77" + "src": "15377:47:18" }, "nodeType": "YulExpressionStatement", - "src": "13364:47:77" + "src": "15377:47:18" }, { "nodeType": "YulAssignment", - "src": "13420:139:77", + "src": "15433:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13554:4:77" + "src": "15567:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "13428:124:77" + "src": "15441:124:18" }, "nodeType": "YulFunctionCall", - "src": "13428:131:77" + "src": "15441:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13420:4:77" + "src": "15433:4:18" } ] } @@ -10374,7 +11351,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "13298:9:77", + "src": "15311:9:18", "type": "" } ], @@ -10382,16 +11359,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "13313:4:77", + "src": "15326:4:18", "type": "" } ], - "src": "13147:419:77" + "src": "15160:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "13678:142:77", + "src": "15691:142:18", "statements": [ { "expression": { @@ -10401,12 +11378,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "13700:6:77" + "src": "15713:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13708:1:77", + "src": "15721:1:18", "type": "", "value": "0" } @@ -10414,16 +11391,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13696:3:77" + "src": "15709:3:18" }, "nodeType": "YulFunctionCall", - "src": "13696:14:77" + "src": "15709:14:18" }, { "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f", "kind": "string", "nodeType": "YulLiteral", - "src": "13712:34:77", + "src": "15725:34:18", "type": "", "value": "ERC721: approve caller is not to" } @@ -10431,13 +11408,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13689:6:77" + "src": "15702:6:18" }, "nodeType": "YulFunctionCall", - "src": "13689:58:77" + "src": "15702:58:18" }, "nodeType": "YulExpressionStatement", - "src": "13689:58:77" + "src": "15702:58:18" }, { "expression": { @@ -10447,12 +11424,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "13768:6:77" + "src": "15781:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13776:2:77", + "src": "15789:2:18", "type": "", "value": "32" } @@ -10460,16 +11437,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13764:3:77" + "src": "15777:3:18" }, "nodeType": "YulFunctionCall", - "src": "13764:15:77" + "src": "15777:15:18" }, { "hexValue": "6b656e206f776e6572206f7220617070726f76656420666f7220616c6c", "kind": "string", "nodeType": "YulLiteral", - "src": "13781:31:77", + "src": "15794:31:18", "type": "", "value": "ken owner or approved for all" } @@ -10477,13 +11454,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13757:6:77" + "src": "15770:6:18" }, "nodeType": "YulFunctionCall", - "src": "13757:56:77" + "src": "15770:56:18" }, "nodeType": "YulExpressionStatement", - "src": "13757:56:77" + "src": "15770:56:18" } ] }, @@ -10493,31 +11470,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "13670:6:77", + "src": "15683:6:18", "type": "" } ], - "src": "13572:248:77" + "src": "15585:248:18" }, { "body": { "nodeType": "YulBlock", - "src": "13972:220:77", + "src": "15985:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "13982:74:77", + "src": "15995:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14048:3:77" + "src": "16061:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14053:2:77", + "src": "16066:2:18", "type": "", "value": "61" } @@ -10525,16 +11502,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "13989:58:77" + "src": "16002:58:18" }, "nodeType": "YulFunctionCall", - "src": "13989:67:77" + "src": "16002:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13982:3:77" + "src": "15995:3:18" } ] }, @@ -10544,34 +11521,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14154:3:77" + "src": "16167:3:18" } ], "functionName": { "name": "store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83", "nodeType": "YulIdentifier", - "src": "14065:88:77" + "src": "16078:88:18" }, "nodeType": "YulFunctionCall", - "src": "14065:93:77" + "src": "16078:93:18" }, "nodeType": "YulExpressionStatement", - "src": "14065:93:77" + "src": "16078:93:18" }, { "nodeType": "YulAssignment", - "src": "14167:19:77", + "src": "16180:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14178:3:77" + "src": "16191:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14183:2:77", + "src": "16196:2:18", "type": "", "value": "64" } @@ -10579,16 +11556,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14174:3:77" + "src": "16187:3:18" }, "nodeType": "YulFunctionCall", - "src": "14174:12:77" + "src": "16187:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "14167:3:77" + "src": "16180:3:18" } ] } @@ -10600,7 +11577,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "13960:3:77", + "src": "15973:3:18", "type": "" } ], @@ -10608,31 +11585,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "13968:3:77", + "src": "15981:3:18", "type": "" } ], - "src": "13826:366:77" + "src": "15839:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "14369:248:77", + "src": "16382:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "14379:26:77", + "src": "16392:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14391:9:77" + "src": "16404:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14402:2:77", + "src": "16415:2:18", "type": "", "value": "32" } @@ -10640,16 +11617,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14387:3:77" + "src": "16400:3:18" }, "nodeType": "YulFunctionCall", - "src": "14387:18:77" + "src": "16400:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14379:4:77" + "src": "16392:4:18" } ] }, @@ -10661,12 +11638,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14426:9:77" + "src": "16439:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14437:1:77", + "src": "16450:1:18", "type": "", "value": "0" } @@ -10674,68 +11651,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14422:3:77" + "src": "16435:3:18" }, "nodeType": "YulFunctionCall", - "src": "14422:17:77" + "src": "16435:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14445:4:77" + "src": "16458:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14451:9:77" + "src": "16464:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "14441:3:77" + "src": "16454:3:18" }, "nodeType": "YulFunctionCall", - "src": "14441:20:77" + "src": "16454:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14415:6:77" + "src": "16428:6:18" }, "nodeType": "YulFunctionCall", - "src": "14415:47:77" + "src": "16428:47:18" }, "nodeType": "YulExpressionStatement", - "src": "14415:47:77" + "src": "16428:47:18" }, { "nodeType": "YulAssignment", - "src": "14471:139:77", + "src": "16484:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14605:4:77" + "src": "16618:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "14479:124:77" + "src": "16492:124:18" }, "nodeType": "YulFunctionCall", - "src": "14479:131:77" + "src": "16492:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14471:4:77" + "src": "16484:4:18" } ] } @@ -10747,7 +11724,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "14349:9:77", + "src": "16362:9:18", "type": "" } ], @@ -10755,16 +11732,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "14364:4:77", + "src": "16377:4:18", "type": "" } ], - "src": "14198:419:77" + "src": "16211:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "14729:126:77", + "src": "16742:126:18", "statements": [ { "expression": { @@ -10774,12 +11751,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "14751:6:77" + "src": "16764:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14759:1:77", + "src": "16772:1:18", "type": "", "value": "0" } @@ -10787,16 +11764,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14747:3:77" + "src": "16760:3:18" }, "nodeType": "YulFunctionCall", - "src": "14747:14:77" + "src": "16760:14:18" }, { "hexValue": "4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e65", "kind": "string", "nodeType": "YulLiteral", - "src": "14763:34:77", + "src": "16776:34:18", "type": "", "value": "ERC721: caller is not token owne" } @@ -10804,13 +11781,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14740:6:77" + "src": "16753:6:18" }, "nodeType": "YulFunctionCall", - "src": "14740:58:77" + "src": "16753:58:18" }, "nodeType": "YulExpressionStatement", - "src": "14740:58:77" + "src": "16753:58:18" }, { "expression": { @@ -10820,12 +11797,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "14819:6:77" + "src": "16832:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14827:2:77", + "src": "16840:2:18", "type": "", "value": "32" } @@ -10833,16 +11810,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14815:3:77" + "src": "16828:3:18" }, "nodeType": "YulFunctionCall", - "src": "14815:15:77" + "src": "16828:15:18" }, { "hexValue": "72206f7220617070726f766564", "kind": "string", "nodeType": "YulLiteral", - "src": "14832:15:77", + "src": "16845:15:18", "type": "", "value": "r or approved" } @@ -10850,13 +11827,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14808:6:77" + "src": "16821:6:18" }, "nodeType": "YulFunctionCall", - "src": "14808:40:77" + "src": "16821:40:18" }, "nodeType": "YulExpressionStatement", - "src": "14808:40:77" + "src": "16821:40:18" } ] }, @@ -10866,31 +11843,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "14721:6:77", + "src": "16734:6:18", "type": "" } ], - "src": "14623:232:77" + "src": "16636:232:18" }, { "body": { "nodeType": "YulBlock", - "src": "15007:220:77", + "src": "17020:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "15017:74:77", + "src": "17030:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15083:3:77" + "src": "17096:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15088:2:77", + "src": "17101:2:18", "type": "", "value": "45" } @@ -10898,16 +11875,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15024:58:77" + "src": "17037:58:18" }, "nodeType": "YulFunctionCall", - "src": "15024:67:77" + "src": "17037:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15017:3:77" + "src": "17030:3:18" } ] }, @@ -10917,34 +11894,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15189:3:77" + "src": "17202:3:18" } ], "functionName": { "name": "store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af", "nodeType": "YulIdentifier", - "src": "15100:88:77" + "src": "17113:88:18" }, "nodeType": "YulFunctionCall", - "src": "15100:93:77" + "src": "17113:93:18" }, "nodeType": "YulExpressionStatement", - "src": "15100:93:77" + "src": "17113:93:18" }, { "nodeType": "YulAssignment", - "src": "15202:19:77", + "src": "17215:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15213:3:77" + "src": "17226:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15218:2:77", + "src": "17231:2:18", "type": "", "value": "64" } @@ -10952,16 +11929,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15209:3:77" + "src": "17222:3:18" }, "nodeType": "YulFunctionCall", - "src": "15209:12:77" + "src": "17222:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "15202:3:77" + "src": "17215:3:18" } ] } @@ -10973,7 +11950,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "14995:3:77", + "src": "17008:3:18", "type": "" } ], @@ -10981,31 +11958,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "15003:3:77", + "src": "17016:3:18", "type": "" } ], - "src": "14861:366:77" + "src": "16874:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "15404:248:77", + "src": "17417:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "15414:26:77", + "src": "17427:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15426:9:77" + "src": "17439:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15437:2:77", + "src": "17450:2:18", "type": "", "value": "32" } @@ -11013,16 +11990,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15422:3:77" + "src": "17435:3:18" }, "nodeType": "YulFunctionCall", - "src": "15422:18:77" + "src": "17435:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15414:4:77" + "src": "17427:4:18" } ] }, @@ -11034,12 +12011,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15461:9:77" + "src": "17474:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15472:1:77", + "src": "17485:1:18", "type": "", "value": "0" } @@ -11047,68 +12024,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15457:3:77" + "src": "17470:3:18" }, "nodeType": "YulFunctionCall", - "src": "15457:17:77" + "src": "17470:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15480:4:77" + "src": "17493:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15486:9:77" + "src": "17499:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15476:3:77" + "src": "17489:3:18" }, "nodeType": "YulFunctionCall", - "src": "15476:20:77" + "src": "17489:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15450:6:77" + "src": "17463:6:18" }, "nodeType": "YulFunctionCall", - "src": "15450:47:77" + "src": "17463:47:18" }, "nodeType": "YulExpressionStatement", - "src": "15450:47:77" + "src": "17463:47:18" }, { "nodeType": "YulAssignment", - "src": "15506:139:77", + "src": "17519:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15640:4:77" + "src": "17653:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15514:124:77" + "src": "17527:124:18" }, "nodeType": "YulFunctionCall", - "src": "15514:131:77" + "src": "17527:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15506:4:77" + "src": "17519:4:18" } ] } @@ -11120,7 +12097,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15384:9:77", + "src": "17397:9:18", "type": "" } ], @@ -11128,16 +12105,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15399:4:77", + "src": "17412:4:18", "type": "" } ], - "src": "15233:419:77" + "src": "17246:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "15764:124:77", + "src": "17777:124:18", "statements": [ { "expression": { @@ -11147,12 +12124,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "15786:6:77" + "src": "17799:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15794:1:77", + "src": "17807:1:18", "type": "", "value": "0" } @@ -11160,16 +12137,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15782:3:77" + "src": "17795:3:18" }, "nodeType": "YulFunctionCall", - "src": "15782:14:77" + "src": "17795:14:18" }, { "hexValue": "455243373231456e756d657261626c653a206f776e657220696e646578206f75", "kind": "string", "nodeType": "YulLiteral", - "src": "15798:34:77", + "src": "17811:34:18", "type": "", "value": "ERC721Enumerable: owner index ou" } @@ -11177,13 +12154,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15775:6:77" + "src": "17788:6:18" }, "nodeType": "YulFunctionCall", - "src": "15775:58:77" + "src": "17788:58:18" }, "nodeType": "YulExpressionStatement", - "src": "15775:58:77" + "src": "17788:58:18" }, { "expression": { @@ -11193,12 +12170,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "15854:6:77" + "src": "17867:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15862:2:77", + "src": "17875:2:18", "type": "", "value": "32" } @@ -11206,16 +12183,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15850:3:77" + "src": "17863:3:18" }, "nodeType": "YulFunctionCall", - "src": "15850:15:77" + "src": "17863:15:18" }, { "hexValue": "74206f6620626f756e6473", "kind": "string", "nodeType": "YulLiteral", - "src": "15867:13:77", + "src": "17880:13:18", "type": "", "value": "t of bounds" } @@ -11223,13 +12200,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15843:6:77" + "src": "17856:6:18" }, "nodeType": "YulFunctionCall", - "src": "15843:38:77" + "src": "17856:38:18" }, "nodeType": "YulExpressionStatement", - "src": "15843:38:77" + "src": "17856:38:18" } ] }, @@ -11239,31 +12216,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "15756:6:77", + "src": "17769:6:18", "type": "" } ], - "src": "15658:230:77" + "src": "17671:230:18" }, { "body": { "nodeType": "YulBlock", - "src": "16040:220:77", + "src": "18053:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "16050:74:77", + "src": "18063:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16116:3:77" + "src": "18129:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16121:2:77", + "src": "18134:2:18", "type": "", "value": "43" } @@ -11271,16 +12248,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16057:58:77" + "src": "18070:58:18" }, "nodeType": "YulFunctionCall", - "src": "16057:67:77" + "src": "18070:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16050:3:77" + "src": "18063:3:18" } ] }, @@ -11290,34 +12267,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16222:3:77" + "src": "18235:3:18" } ], "functionName": { "name": "store_literal_in_memory_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c", "nodeType": "YulIdentifier", - "src": "16133:88:77" + "src": "18146:88:18" }, "nodeType": "YulFunctionCall", - "src": "16133:93:77" + "src": "18146:93:18" }, "nodeType": "YulExpressionStatement", - "src": "16133:93:77" + "src": "18146:93:18" }, { "nodeType": "YulAssignment", - "src": "16235:19:77", + "src": "18248:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16246:3:77" + "src": "18259:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16251:2:77", + "src": "18264:2:18", "type": "", "value": "64" } @@ -11325,16 +12302,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16242:3:77" + "src": "18255:3:18" }, "nodeType": "YulFunctionCall", - "src": "16242:12:77" + "src": "18255:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "16235:3:77" + "src": "18248:3:18" } ] } @@ -11346,7 +12323,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "16028:3:77", + "src": "18041:3:18", "type": "" } ], @@ -11354,31 +12331,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "16036:3:77", + "src": "18049:3:18", "type": "" } ], - "src": "15894:366:77" + "src": "17907:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "16437:248:77", + "src": "18450:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "16447:26:77", + "src": "18460:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16459:9:77" + "src": "18472:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16470:2:77", + "src": "18483:2:18", "type": "", "value": "32" } @@ -11386,16 +12363,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16455:3:77" + "src": "18468:3:18" }, "nodeType": "YulFunctionCall", - "src": "16455:18:77" + "src": "18468:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16447:4:77" + "src": "18460:4:18" } ] }, @@ -11407,12 +12384,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16494:9:77" + "src": "18507:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16505:1:77", + "src": "18518:1:18", "type": "", "value": "0" } @@ -11420,68 +12397,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16490:3:77" + "src": "18503:3:18" }, "nodeType": "YulFunctionCall", - "src": "16490:17:77" + "src": "18503:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16513:4:77" + "src": "18526:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16519:9:77" + "src": "18532:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16509:3:77" + "src": "18522:3:18" }, "nodeType": "YulFunctionCall", - "src": "16509:20:77" + "src": "18522:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16483:6:77" + "src": "18496:6:18" }, "nodeType": "YulFunctionCall", - "src": "16483:47:77" + "src": "18496:47:18" }, "nodeType": "YulExpressionStatement", - "src": "16483:47:77" + "src": "18496:47:18" }, { "nodeType": "YulAssignment", - "src": "16539:139:77", + "src": "18552:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16673:4:77" + "src": "18686:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16547:124:77" + "src": "18560:124:18" }, "nodeType": "YulFunctionCall", - "src": "16547:131:77" + "src": "18560:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16539:4:77" + "src": "18552:4:18" } ] } @@ -11493,7 +12470,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16417:9:77", + "src": "18430:9:18", "type": "" } ], @@ -11501,16 +12478,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16432:4:77", + "src": "18445:4:18", "type": "" } ], - "src": "16266:419:77" + "src": "18279:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "16797:128:77", + "src": "18810:128:18", "statements": [ { "expression": { @@ -11520,12 +12497,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "16819:6:77" + "src": "18832:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16827:1:77", + "src": "18840:1:18", "type": "", "value": "0" } @@ -11533,16 +12510,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16815:3:77" + "src": "18828:3:18" }, "nodeType": "YulFunctionCall", - "src": "16815:14:77" + "src": "18828:14:18" }, { "hexValue": "416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e6365", "kind": "string", "nodeType": "YulLiteral", - "src": "16831:34:77", + "src": "18844:34:18", "type": "", "value": "AccessControl: can only renounce" } @@ -11550,13 +12527,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16808:6:77" + "src": "18821:6:18" }, "nodeType": "YulFunctionCall", - "src": "16808:58:77" + "src": "18821:58:18" }, "nodeType": "YulExpressionStatement", - "src": "16808:58:77" + "src": "18821:58:18" }, { "expression": { @@ -11566,12 +12543,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "16887:6:77" + "src": "18900:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16895:2:77", + "src": "18908:2:18", "type": "", "value": "32" } @@ -11579,16 +12556,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16883:3:77" + "src": "18896:3:18" }, "nodeType": "YulFunctionCall", - "src": "16883:15:77" + "src": "18896:15:18" }, { "hexValue": "20726f6c657320666f722073656c66", "kind": "string", "nodeType": "YulLiteral", - "src": "16900:17:77", + "src": "18913:17:18", "type": "", "value": " roles for self" } @@ -11596,13 +12573,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16876:6:77" + "src": "18889:6:18" }, "nodeType": "YulFunctionCall", - "src": "16876:42:77" + "src": "18889:42:18" }, "nodeType": "YulExpressionStatement", - "src": "16876:42:77" + "src": "18889:42:18" } ] }, @@ -11612,31 +12589,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "16789:6:77", + "src": "18802:6:18", "type": "" } ], - "src": "16691:234:77" + "src": "18704:234:18" }, { "body": { "nodeType": "YulBlock", - "src": "17077:220:77", + "src": "19090:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "17087:74:77", + "src": "19100:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17153:3:77" + "src": "19166:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17158:2:77", + "src": "19171:2:18", "type": "", "value": "47" } @@ -11644,16 +12621,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17094:58:77" + "src": "19107:58:18" }, "nodeType": "YulFunctionCall", - "src": "17094:67:77" + "src": "19107:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17087:3:77" + "src": "19100:3:18" } ] }, @@ -11663,34 +12640,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17259:3:77" + "src": "19272:3:18" } ], "functionName": { "name": "store_literal_in_memory_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b", "nodeType": "YulIdentifier", - "src": "17170:88:77" + "src": "19183:88:18" }, "nodeType": "YulFunctionCall", - "src": "17170:93:77" + "src": "19183:93:18" }, "nodeType": "YulExpressionStatement", - "src": "17170:93:77" + "src": "19183:93:18" }, { "nodeType": "YulAssignment", - "src": "17272:19:77", + "src": "19285:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17283:3:77" + "src": "19296:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17288:2:77", + "src": "19301:2:18", "type": "", "value": "64" } @@ -11698,16 +12675,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17279:3:77" + "src": "19292:3:18" }, "nodeType": "YulFunctionCall", - "src": "17279:12:77" + "src": "19292:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "17272:3:77" + "src": "19285:3:18" } ] } @@ -11719,7 +12696,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "17065:3:77", + "src": "19078:3:18", "type": "" } ], @@ -11727,31 +12704,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "17073:3:77", + "src": "19086:3:18", "type": "" } ], - "src": "16931:366:77" + "src": "18944:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "17474:248:77", + "src": "19487:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "17484:26:77", + "src": "19497:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17496:9:77" + "src": "19509:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17507:2:77", + "src": "19520:2:18", "type": "", "value": "32" } @@ -11759,16 +12736,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17492:3:77" + "src": "19505:3:18" }, "nodeType": "YulFunctionCall", - "src": "17492:18:77" + "src": "19505:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17484:4:77" + "src": "19497:4:18" } ] }, @@ -11780,12 +12757,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17531:9:77" + "src": "19544:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17542:1:77", + "src": "19555:1:18", "type": "", "value": "0" } @@ -11793,68 +12770,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17527:3:77" + "src": "19540:3:18" }, "nodeType": "YulFunctionCall", - "src": "17527:17:77" + "src": "19540:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17550:4:77" + "src": "19563:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17556:9:77" + "src": "19569:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "17546:3:77" + "src": "19559:3:18" }, "nodeType": "YulFunctionCall", - "src": "17546:20:77" + "src": "19559:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17520:6:77" + "src": "19533:6:18" }, "nodeType": "YulFunctionCall", - "src": "17520:47:77" + "src": "19533:47:18" }, "nodeType": "YulExpressionStatement", - "src": "17520:47:77" + "src": "19533:47:18" }, { "nodeType": "YulAssignment", - "src": "17576:139:77", + "src": "19589:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17710:4:77" + "src": "19723:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_fb06fa8ff2141e8ed74502f6792273793f25f0e9d3cf15344f3f5a0d4948fd4b_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17584:124:77" + "src": "19597:124:18" }, "nodeType": "YulFunctionCall", - "src": "17584:131:77" + "src": "19597:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17576:4:77" + "src": "19589:4:18" } ] } @@ -11866,7 +12843,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17454:9:77", + "src": "19467:9:18", "type": "" } ], @@ -11874,16 +12851,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17469:4:77", + "src": "19482:4:18", "type": "" } ], - "src": "17303:419:77" + "src": "19316:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "17834:76:77", + "src": "19847:76:18", "statements": [ { "expression": { @@ -11893,12 +12870,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17856:6:77" + "src": "19869:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17864:1:77", + "src": "19877:1:18", "type": "", "value": "0" } @@ -11906,16 +12883,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17852:3:77" + "src": "19865:3:18" }, "nodeType": "YulFunctionCall", - "src": "17852:14:77" + "src": "19865:14:18" }, { "hexValue": "43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", "kind": "string", "nodeType": "YulLiteral", - "src": "17868:34:77", + "src": "19881:34:18", "type": "", "value": "Caller is not owner nor approved" } @@ -11923,13 +12900,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17845:6:77" + "src": "19858:6:18" }, "nodeType": "YulFunctionCall", - "src": "17845:58:77" + "src": "19858:58:18" }, "nodeType": "YulExpressionStatement", - "src": "17845:58:77" + "src": "19858:58:18" } ] }, @@ -11939,31 +12916,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "17826:6:77", + "src": "19839:6:18", "type": "" } ], - "src": "17728:182:77" + "src": "19741:182:18" }, { "body": { "nodeType": "YulBlock", - "src": "18062:220:77", + "src": "20075:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "18072:74:77", + "src": "20085:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18138:3:77" + "src": "20151:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18143:2:77", + "src": "20156:2:18", "type": "", "value": "32" } @@ -11971,16 +12948,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18079:58:77" + "src": "20092:58:18" }, "nodeType": "YulFunctionCall", - "src": "18079:67:77" + "src": "20092:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18072:3:77" + "src": "20085:3:18" } ] }, @@ -11990,34 +12967,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18244:3:77" + "src": "20257:3:18" } ], "functionName": { "name": "store_literal_in_memory_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d", "nodeType": "YulIdentifier", - "src": "18155:88:77" + "src": "20168:88:18" }, "nodeType": "YulFunctionCall", - "src": "18155:93:77" + "src": "20168:93:18" }, "nodeType": "YulExpressionStatement", - "src": "18155:93:77" + "src": "20168:93:18" }, { "nodeType": "YulAssignment", - "src": "18257:19:77", + "src": "20270:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18268:3:77" + "src": "20281:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18273:2:77", + "src": "20286:2:18", "type": "", "value": "32" } @@ -12025,16 +13002,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18264:3:77" + "src": "20277:3:18" }, "nodeType": "YulFunctionCall", - "src": "18264:12:77" + "src": "20277:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "18257:3:77" + "src": "20270:3:18" } ] } @@ -12046,7 +13023,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "18050:3:77", + "src": "20063:3:18", "type": "" } ], @@ -12054,31 +13031,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "18058:3:77", + "src": "20071:3:18", "type": "" } ], - "src": "17916:366:77" + "src": "19929:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "18459:248:77", + "src": "20472:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "18469:26:77", + "src": "20482:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18481:9:77" + "src": "20494:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18492:2:77", + "src": "20505:2:18", "type": "", "value": "32" } @@ -12086,16 +13063,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18477:3:77" + "src": "20490:3:18" }, "nodeType": "YulFunctionCall", - "src": "18477:18:77" + "src": "20490:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18469:4:77" + "src": "20482:4:18" } ] }, @@ -12107,12 +13084,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18516:9:77" + "src": "20529:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18527:1:77", + "src": "20540:1:18", "type": "", "value": "0" } @@ -12120,68 +13097,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18512:3:77" + "src": "20525:3:18" }, "nodeType": "YulFunctionCall", - "src": "18512:17:77" + "src": "20525:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18535:4:77" + "src": "20548:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18541:9:77" + "src": "20554:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "18531:3:77" + "src": "20544:3:18" }, "nodeType": "YulFunctionCall", - "src": "18531:20:77" + "src": "20544:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18505:6:77" + "src": "20518:6:18" }, "nodeType": "YulFunctionCall", - "src": "18505:47:77" + "src": "20518:47:18" }, "nodeType": "YulExpressionStatement", - "src": "18505:47:77" + "src": "20518:47:18" }, { "nodeType": "YulAssignment", - "src": "18561:139:77", + "src": "20574:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18695:4:77" + "src": "20708:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18569:124:77" + "src": "20582:124:18" }, "nodeType": "YulFunctionCall", - "src": "18569:131:77" + "src": "20582:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18561:4:77" + "src": "20574:4:18" } ] } @@ -12193,7 +13170,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "18439:9:77", + "src": "20452:9:18", "type": "" } ], @@ -12201,16 +13178,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "18454:4:77", + "src": "20467:4:18", "type": "" } ], - "src": "18288:419:77" + "src": "20301:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "18819:125:77", + "src": "20832:62:18", "statements": [ { "expression": { @@ -12220,12 +13197,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "18841:6:77" + "src": "20854:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18849:1:77", + "src": "20862:1:18", "type": "", "value": "0" } @@ -12233,127 +13210,81 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18837:3:77" + "src": "20850:3:18" }, "nodeType": "YulFunctionCall", - "src": "18837:14:77" + "src": "20850:14:18" }, { - "hexValue": "455243373231456e756d657261626c653a20676c6f62616c20696e646578206f", + "hexValue": "746f6b656e49647320746f6f20736d616c6c", "kind": "string", "nodeType": "YulLiteral", - "src": "18853:34:77", + "src": "20866:20:18", "type": "", - "value": "ERC721Enumerable: global index o" + "value": "tokenIds too small" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18830:6:77" + "src": "20843:6:18" }, "nodeType": "YulFunctionCall", - "src": "18830:58:77" + "src": "20843:44:18" }, "nodeType": "YulExpressionStatement", - "src": "18830:58:77" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "18909:6:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18917:2:77", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18905:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "18905:15:77" - }, - { - "hexValue": "7574206f6620626f756e6473", - "kind": "string", - "nodeType": "YulLiteral", - "src": "18922:14:77", - "type": "", - "value": "ut of bounds" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18898:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "18898:39:77" - }, - "nodeType": "YulExpressionStatement", - "src": "18898:39:77" + "src": "20843:44:18" } ] }, - "name": "store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc", + "name": "store_literal_in_memory_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "18811:6:77", + "src": "20824:6:18", "type": "" } ], - "src": "18713:231:77" + "src": "20726:168:18" }, { "body": { "nodeType": "YulBlock", - "src": "19096:220:77", + "src": "21046:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "19106:74:77", + "src": "21056:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19172:3:77" + "src": "21122:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19177:2:77", + "src": "21127:2:18", "type": "", - "value": "44" + "value": "18" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19113:58:77" + "src": "21063:58:18" }, "nodeType": "YulFunctionCall", - "src": "19113:67:77" + "src": "21063:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19106:3:77" + "src": "21056:3:18" } ] }, @@ -12363,95 +13294,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19278:3:77" + "src": "21228:3:18" } ], "functionName": { - "name": "store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc", + "name": "store_literal_in_memory_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a", "nodeType": "YulIdentifier", - "src": "19189:88:77" + "src": "21139:88:18" }, "nodeType": "YulFunctionCall", - "src": "19189:93:77" + "src": "21139:93:18" }, "nodeType": "YulExpressionStatement", - "src": "19189:93:77" + "src": "21139:93:18" }, { "nodeType": "YulAssignment", - "src": "19291:19:77", + "src": "21241:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19302:3:77" + "src": "21252:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19307:2:77", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19298:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "19298:12:77" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "19291:3:77" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "19084:3:77", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "19092:3:77", - "type": "" - } - ], - "src": "18950:366:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19493:248:77", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19503:26:77", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "19515:9:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19526:2:77", + "src": "21257:2:18", "type": "", "value": "32" } @@ -12459,16 +13329,77 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19511:3:77" + "src": "21248:3:18" }, "nodeType": "YulFunctionCall", - "src": "19511:18:77" + "src": "21248:12:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "21241:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "21034:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "21042:3:18", + "type": "" + } + ], + "src": "20900:366:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "21443:248:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "21453:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21465:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21476:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21461:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "21461:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19503:4:77" + "src": "21453:4:18" } ] }, @@ -12480,12 +13411,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19550:9:77" + "src": "21500:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19561:1:77", + "src": "21511:1:18", "type": "", "value": "0" } @@ -12493,80 +13424,80 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19546:3:77" + "src": "21496:3:18" }, "nodeType": "YulFunctionCall", - "src": "19546:17:77" + "src": "21496:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19569:4:77" + "src": "21519:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19575:9:77" + "src": "21525:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19565:3:77" + "src": "21515:3:18" }, "nodeType": "YulFunctionCall", - "src": "19565:20:77" + "src": "21515:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19539:6:77" + "src": "21489:6:18" }, "nodeType": "YulFunctionCall", - "src": "19539:47:77" + "src": "21489:47:18" }, "nodeType": "YulExpressionStatement", - "src": "19539:47:77" + "src": "21489:47:18" }, { "nodeType": "YulAssignment", - "src": "19595:139:77", + "src": "21545:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19729:4:77" + "src": "21679:4:18" } ], "functionName": { - "name": "abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack", + "name": "abi_encode_t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19603:124:77" + "src": "21553:124:18" }, "nodeType": "YulFunctionCall", - "src": "19603:131:77" + "src": "21553:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19595:4:77" + "src": "21545:4:18" } ] } ] }, - "name": "abi_encode_tuple_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc__to_t_string_memory_ptr__fromStack_reversed", + "name": "abi_encode_tuple_t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a__to_t_string_memory_ptr__fromStack_reversed", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19473:9:77", + "src": "21423:9:18", "type": "" } ], @@ -12574,16 +13505,343 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19488:4:77", + "src": "21438:4:18", "type": "" } ], - "src": "19322:419:77" + "src": "21272:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "19775:152:77", + "src": "21803:61:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "21825:6:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21833:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21821:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "21821:14:18" + }, + { + "hexValue": "746f6b656e49647320746f6f206d616e79", + "kind": "string", + "nodeType": "YulLiteral", + "src": "21837:19:18", + "type": "", + "value": "tokenIds too many" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "21814:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "21814:43:18" + }, + "nodeType": "YulExpressionStatement", + "src": "21814:43:18" + } + ] + }, + "name": "store_literal_in_memory_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "21795:6:18", + "type": "" + } + ], + "src": "21697:167:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22016:220:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "22026:74:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22092:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22097:2:18", + "type": "", + "value": "17" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "22033:58:18" + }, + "nodeType": "YulFunctionCall", + "src": "22033:67:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22026:3:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22198:3:18" + } + ], + "functionName": { + "name": "store_literal_in_memory_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef", + "nodeType": "YulIdentifier", + "src": "22109:88:18" + }, + "nodeType": "YulFunctionCall", + "src": "22109:93:18" + }, + "nodeType": "YulExpressionStatement", + "src": "22109:93:18" + }, + { + "nodeType": "YulAssignment", + "src": "22211:19:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22222:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22227:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22218:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "22218:12:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "22211:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "22004:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "22012:3:18", + "type": "" + } + ], + "src": "21870:366:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22413:248:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "22423:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22435:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22446:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22431:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "22431:18:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "22423:4:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22470:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22481:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22466:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "22466:17:18" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "22489:4:18" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22495:9:18" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "22485:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "22485:20:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "22459:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "22459:47:18" + }, + "nodeType": "YulExpressionStatement", + "src": "22459:47:18" + }, + { + "nodeType": "YulAssignment", + "src": "22515:139:18", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "22649:4:18" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "22523:124:18" + }, + "nodeType": "YulFunctionCall", + "src": "22523:131:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "22515:4:18" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "22393:9:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "22408:4:18", + "type": "" + } + ], + "src": "22242:419:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22695:152:18", "statements": [ { "expression": { @@ -12591,14 +13849,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "19792:1:77", + "src": "22712:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19795:77:77", + "src": "22715:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -12606,13 +13864,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19785:6:77" + "src": "22705:6:18" }, "nodeType": "YulFunctionCall", - "src": "19785:88:77" + "src": "22705:88:18" }, "nodeType": "YulExpressionStatement", - "src": "19785:88:77" + "src": "22705:88:18" }, { "expression": { @@ -12620,766 +13878,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "19889:1:77", + "src": "22809:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19892:4:77", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19882:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "19882:15:77" - }, - "nodeType": "YulExpressionStatement", - "src": "19882:15:77" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19913:1:77", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19916:4:77", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "19906:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "19906:15:77" - }, - "nodeType": "YulExpressionStatement", - "src": "19906:15:77" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "19747:180:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20039:68:77", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "20061:6:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20069:1:77", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20057:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "20057:14:77" - }, - { - "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20073:26:77", - "type": "", - "value": "ERC721: invalid token ID" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20050:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "20050:50:77" - }, - "nodeType": "YulExpressionStatement", - "src": "20050:50:77" - } - ] - }, - "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "20031:6:77", - "type": "" - } - ], - "src": "19933:174:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20259:220:77", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20269:74:77", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20335:3:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20340:2:77", - "type": "", - "value": "24" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20276:58:77" - }, - "nodeType": "YulFunctionCall", - "src": "20276:67:77" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20269:3:77" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20441:3:77" - } - ], - "functionName": { - "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", - "nodeType": "YulIdentifier", - "src": "20352:88:77" - }, - "nodeType": "YulFunctionCall", - "src": "20352:93:77" - }, - "nodeType": "YulExpressionStatement", - "src": "20352:93:77" - }, - { - "nodeType": "YulAssignment", - "src": "20454:19:77", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20465:3:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20470:2:77", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20461:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "20461:12:77" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "20454:3:77" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "20247:3:77", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "20255:3:77", - "type": "" - } - ], - "src": "20113:366:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20656:248:77", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20666:26:77", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20678:9:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20689:2:77", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20674:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "20674:18:77" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20666:4:77" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20713:9:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20724:1:77", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20709:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "20709:17:77" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20732:4:77" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20738:9:77" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20728:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "20728:20:77" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20702:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "20702:47:77" - }, - "nodeType": "YulExpressionStatement", - "src": "20702:47:77" - }, - { - "nodeType": "YulAssignment", - "src": "20758:139:77", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20892:4:77" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20766:124:77" - }, - "nodeType": "YulFunctionCall", - "src": "20766:131:77" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20758:4:77" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20636:9:77", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20651:4:77", - "type": "" - } - ], - "src": "20485:419:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21016:71:77", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "21038:6:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21046:1:77", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21034:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "21034:14:77" - }, - { - "hexValue": "43616e6e6f74206d696e7420746f207a65726f2061646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21050:29:77", - "type": "", - "value": "Cannot mint to zero address" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21027:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "21027:53:77" - }, - "nodeType": "YulExpressionStatement", - "src": "21027:53:77" - } - ] - }, - "name": "store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "21008:6:77", - "type": "" - } - ], - "src": "20910:177:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21239:220:77", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21249:74:77", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21315:3:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21320:2:77", - "type": "", - "value": "27" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "21256:58:77" - }, - "nodeType": "YulFunctionCall", - "src": "21256:67:77" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21249:3:77" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21421:3:77" - } - ], - "functionName": { - "name": "store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", - "nodeType": "YulIdentifier", - "src": "21332:88:77" - }, - "nodeType": "YulFunctionCall", - "src": "21332:93:77" - }, - "nodeType": "YulExpressionStatement", - "src": "21332:93:77" - }, - { - "nodeType": "YulAssignment", - "src": "21434:19:77", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21445:3:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21450:2:77", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21441:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "21441:12:77" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "21434:3:77" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "21227:3:77", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "21235:3:77", - "type": "" - } - ], - "src": "21093:366:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21636:248:77", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21646:26:77", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21658:9:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21669:2:77", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21654:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "21654:18:77" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21646:4:77" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21693:9:77" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21704:1:77", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21689:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "21689:17:77" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21712:4:77" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21718:9:77" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "21708:3:77" - }, - "nodeType": "YulFunctionCall", - "src": "21708:20:77" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21682:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "21682:47:77" - }, - "nodeType": "YulExpressionStatement", - "src": "21682:47:77" - }, - { - "nodeType": "YulAssignment", - "src": "21738:139:77", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21872:4:77" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "21746:124:77" - }, - "nodeType": "YulFunctionCall", - "src": "21746:131:77" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21738:4:77" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21616:9:77", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21631:4:77", - "type": "" - } - ], - "src": "21465:419:77" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21918:152:77", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21935:1:77", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21938:77:77", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21928:6:77" - }, - "nodeType": "YulFunctionCall", - "src": "21928:88:77" - }, - "nodeType": "YulExpressionStatement", - "src": "21928:88:77" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22032:1:77", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22035:4:77", + "src": "22812:4:18", "type": "", "value": "0x11" } @@ -13387,13 +13893,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22025:6:77" + "src": "22802:6:18" }, "nodeType": "YulFunctionCall", - "src": "22025:15:77" + "src": "22802:15:18" }, "nodeType": "YulExpressionStatement", - "src": "22025:15:77" + "src": "22802:15:18" }, { "expression": { @@ -13401,14 +13907,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "22056:1:77", + "src": "22833:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22059:4:77", + "src": "22836:4:18", "type": "", "value": "0x24" } @@ -13416,83 +13922,83 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "22049:6:77" + "src": "22826:6:18" }, "nodeType": "YulFunctionCall", - "src": "22049:15:77" + "src": "22826:15:18" }, "nodeType": "YulExpressionStatement", - "src": "22049:15:77" + "src": "22826:15:18" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "21890:180:77" + "src": "22667:180:18" }, { "body": { "nodeType": "YulBlock", - "src": "22120:261:77", + "src": "22897:261:18", "statements": [ { "nodeType": "YulAssignment", - "src": "22130:25:77", + "src": "22907:25:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "22153:1:77" + "src": "22930:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "22135:17:77" + "src": "22912:17:18" }, "nodeType": "YulFunctionCall", - "src": "22135:20:77" + "src": "22912:20:18" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "22130:1:77" + "src": "22907:1:18" } ] }, { "nodeType": "YulAssignment", - "src": "22164:25:77", + "src": "22941:25:18", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "22187:1:77" + "src": "22964:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "22169:17:77" + "src": "22946:17:18" }, "nodeType": "YulFunctionCall", - "src": "22169:20:77" + "src": "22946:20:18" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "22164:1:77" + "src": "22941:1:18" } ] }, { "body": { "nodeType": "YulBlock", - "src": "22327:22:77", + "src": "23104:22:18", "statements": [ { "expression": { @@ -13500,13 +14006,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "22329:16:77" + "src": "23106:16:18" }, "nodeType": "YulFunctionCall", - "src": "22329:18:77" + "src": "23106:18:18" }, "nodeType": "YulExpressionStatement", - "src": "22329:18:77" + "src": "23106:18:18" } ] }, @@ -13515,72 +14021,72 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "22248:1:77" + "src": "23025:1:18" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "22255:66:77", + "src": "23032:66:18", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "22323:1:77" + "src": "23100:1:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "22251:3:77" + "src": "23028:3:18" }, "nodeType": "YulFunctionCall", - "src": "22251:74:77" + "src": "23028:74:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "22245:2:77" + "src": "23022:2:18" }, "nodeType": "YulFunctionCall", - "src": "22245:81:77" + "src": "23022:81:18" }, "nodeType": "YulIf", - "src": "22242:107:77" + "src": "23019:107:18" }, { "nodeType": "YulAssignment", - "src": "22359:16:77", + "src": "23136:16:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "22370:1:77" + "src": "23147:1:18" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "22373:1:77" + "src": "23150:1:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22366:3:77" + "src": "23143:3:18" }, "nodeType": "YulFunctionCall", - "src": "22366:9:77" + "src": "23143:9:18" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "22359:3:77" + "src": "23136:3:18" } ] } @@ -13592,13 +14098,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "22107:1:77", + "src": "22884:1:18", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "22110:1:77", + "src": "22887:1:18", "type": "" } ], @@ -13606,16 +14112,16 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "22116:3:77", + "src": "22893:3:18", "type": "" } ], - "src": "22076:305:77" + "src": "22853:305:18" }, { "body": { "nodeType": "YulBlock", - "src": "22493:67:77", + "src": "23270:67:18", "statements": [ { "expression": { @@ -13625,12 +14131,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22515:6:77" + "src": "23292:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22523:1:77", + "src": "23300:1:18", "type": "", "value": "0" } @@ -13638,16 +14144,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22511:3:77" + "src": "23288:3:18" }, "nodeType": "YulFunctionCall", - "src": "22511:14:77" + "src": "23288:14:18" }, { "hexValue": "4578636565642074686520746f74616c20737570706c79", "kind": "string", "nodeType": "YulLiteral", - "src": "22527:25:77", + "src": "23304:25:18", "type": "", "value": "Exceed the total supply" } @@ -13655,13 +14161,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22504:6:77" + "src": "23281:6:18" }, "nodeType": "YulFunctionCall", - "src": "22504:49:77" + "src": "23281:49:18" }, "nodeType": "YulExpressionStatement", - "src": "22504:49:77" + "src": "23281:49:18" } ] }, @@ -13671,31 +14177,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "22485:6:77", + "src": "23262:6:18", "type": "" } ], - "src": "22387:173:77" + "src": "23164:173:18" }, { "body": { "nodeType": "YulBlock", - "src": "22712:220:77", + "src": "23489:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "22722:74:77", + "src": "23499:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22788:3:77" + "src": "23565:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22793:2:77", + "src": "23570:2:18", "type": "", "value": "23" } @@ -13703,16 +14209,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "22729:58:77" + "src": "23506:58:18" }, "nodeType": "YulFunctionCall", - "src": "22729:67:77" + "src": "23506:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22722:3:77" + "src": "23499:3:18" } ] }, @@ -13722,34 +14228,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22894:3:77" + "src": "23671:3:18" } ], "functionName": { "name": "store_literal_in_memory_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1", "nodeType": "YulIdentifier", - "src": "22805:88:77" + "src": "23582:88:18" }, "nodeType": "YulFunctionCall", - "src": "22805:93:77" + "src": "23582:93:18" }, "nodeType": "YulExpressionStatement", - "src": "22805:93:77" + "src": "23582:93:18" }, { "nodeType": "YulAssignment", - "src": "22907:19:77", + "src": "23684:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22918:3:77" + "src": "23695:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22923:2:77", + "src": "23700:2:18", "type": "", "value": "32" } @@ -13757,16 +14263,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22914:3:77" + "src": "23691:3:18" }, "nodeType": "YulFunctionCall", - "src": "22914:12:77" + "src": "23691:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "22907:3:77" + "src": "23684:3:18" } ] } @@ -13778,7 +14284,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "22700:3:77", + "src": "23477:3:18", "type": "" } ], @@ -13786,31 +14292,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "22708:3:77", + "src": "23485:3:18", "type": "" } ], - "src": "22566:366:77" + "src": "23343:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "23109:248:77", + "src": "23886:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "23119:26:77", + "src": "23896:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23131:9:77" + "src": "23908:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23142:2:77", + "src": "23919:2:18", "type": "", "value": "32" } @@ -13818,16 +14324,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23127:3:77" + "src": "23904:3:18" }, "nodeType": "YulFunctionCall", - "src": "23127:18:77" + "src": "23904:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23119:4:77" + "src": "23896:4:18" } ] }, @@ -13839,12 +14345,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23166:9:77" + "src": "23943:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23177:1:77", + "src": "23954:1:18", "type": "", "value": "0" } @@ -13852,68 +14358,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23162:3:77" + "src": "23939:3:18" }, "nodeType": "YulFunctionCall", - "src": "23162:17:77" + "src": "23939:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23185:4:77" + "src": "23962:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23191:9:77" + "src": "23968:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "23181:3:77" + "src": "23958:3:18" }, "nodeType": "YulFunctionCall", - "src": "23181:20:77" + "src": "23958:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23155:6:77" + "src": "23932:6:18" }, "nodeType": "YulFunctionCall", - "src": "23155:47:77" + "src": "23932:47:18" }, "nodeType": "YulExpressionStatement", - "src": "23155:47:77" + "src": "23932:47:18" }, { "nodeType": "YulAssignment", - "src": "23211:139:77", + "src": "23988:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23345:4:77" + "src": "24122:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23219:124:77" + "src": "23996:124:18" }, "nodeType": "YulFunctionCall", - "src": "23219:131:77" + "src": "23996:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23211:4:77" + "src": "23988:4:18" } ] } @@ -13925,7 +14431,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "23089:9:77", + "src": "23866:9:18", "type": "" } ], @@ -13933,16 +14439,249 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "23104:4:77", + "src": "23881:4:18", "type": "" } ], - "src": "22938:419:77" + "src": "23715:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "23469:122:77", + "src": "24168:152:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24185:1:18", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24188:77:18", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "24178:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "24178:88:18" + }, + "nodeType": "YulExpressionStatement", + "src": "24178:88:18" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24282:1:18", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24285:4:18", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "24275:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "24275:15:18" + }, + "nodeType": "YulExpressionStatement", + "src": "24275:15:18" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24306:1:18", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24309:4:18", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "24299:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "24299:15:18" + }, + "nodeType": "YulExpressionStatement", + "src": "24299:15:18" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "24140:180:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24369:190:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "24379:33:18", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "24406:5:18" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "24388:17:18" + }, + "nodeType": "YulFunctionCall", + "src": "24388:24:18" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "24379:5:18" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24502:22:18", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "24504:16:18" + }, + "nodeType": "YulFunctionCall", + "src": "24504:18:18" + }, + "nodeType": "YulExpressionStatement", + "src": "24504:18:18" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "24427:5:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24434:66:18", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "24424:2:18" + }, + "nodeType": "YulFunctionCall", + "src": "24424:77:18" + }, + "nodeType": "YulIf", + "src": "24421:103:18" + }, + { + "nodeType": "YulAssignment", + "src": "24533:20:18", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "24544:5:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24551:1:18", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24540:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "24540:13:18" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "24533:3:18" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "24355:5:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "24365:3:18", + "type": "" + } + ], + "src": "24326:233:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24671:125:18", "statements": [ { "expression": { @@ -13952,12 +14691,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "23491:6:77" + "src": "24693:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23499:1:77", + "src": "24701:1:18", "type": "", "value": "0" } @@ -13965,30 +14704,30 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23487:3:77" + "src": "24689:3:18" }, "nodeType": "YulFunctionCall", - "src": "23487:14:77" + "src": "24689:14:18" }, { - "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f742061207661", + "hexValue": "455243373231456e756d657261626c653a20676c6f62616c20696e646578206f", "kind": "string", "nodeType": "YulLiteral", - "src": "23503:34:77", + "src": "24705:34:18", "type": "", - "value": "ERC721: address zero is not a va" + "value": "ERC721Enumerable: global index o" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23480:6:77" + "src": "24682:6:18" }, "nodeType": "YulFunctionCall", - "src": "23480:58:77" + "src": "24682:58:18" }, "nodeType": "YulExpressionStatement", - "src": "23480:58:77" + "src": "24682:58:18" }, { "expression": { @@ -13998,12 +14737,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "23559:6:77" + "src": "24761:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23567:2:77", + "src": "24769:2:18", "type": "", "value": "32" } @@ -14011,81 +14750,81 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23555:3:77" + "src": "24757:3:18" }, "nodeType": "YulFunctionCall", - "src": "23555:15:77" + "src": "24757:15:18" }, { - "hexValue": "6c6964206f776e6572", + "hexValue": "7574206f6620626f756e6473", "kind": "string", "nodeType": "YulLiteral", - "src": "23572:11:77", + "src": "24774:14:18", "type": "", - "value": "lid owner" + "value": "ut of bounds" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23548:6:77" + "src": "24750:6:18" }, "nodeType": "YulFunctionCall", - "src": "23548:36:77" + "src": "24750:39:18" }, "nodeType": "YulExpressionStatement", - "src": "23548:36:77" + "src": "24750:39:18" } ] }, - "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "name": "store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc", "nodeType": "YulFunctionDefinition", "parameters": [ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "23461:6:77", + "src": "24663:6:18", "type": "" } ], - "src": "23363:228:77" + "src": "24565:231:18" }, { "body": { "nodeType": "YulBlock", - "src": "23743:220:77", + "src": "24948:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "23753:74:77", + "src": "24958:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23819:3:77" + "src": "25024:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23824:2:77", + "src": "25029:2:18", "type": "", - "value": "41" + "value": "44" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23760:58:77" + "src": "24965:58:18" }, "nodeType": "YulFunctionCall", - "src": "23760:67:77" + "src": "24965:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23753:3:77" + "src": "24958:3:18" } ] }, @@ -14095,34 +14834,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23925:3:77" + "src": "25130:3:18" } ], "functionName": { - "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "name": "store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc", "nodeType": "YulIdentifier", - "src": "23836:88:77" + "src": "25041:88:18" }, "nodeType": "YulFunctionCall", - "src": "23836:93:77" + "src": "25041:93:18" }, "nodeType": "YulExpressionStatement", - "src": "23836:93:77" + "src": "25041:93:18" }, { "nodeType": "YulAssignment", - "src": "23938:19:77", + "src": "25143:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23949:3:77" + "src": "25154:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23954:2:77", + "src": "25159:2:18", "type": "", "value": "64" } @@ -14130,16 +14869,1043 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23945:3:77" + "src": "25150:3:18" }, "nodeType": "YulFunctionCall", - "src": "23945:12:77" + "src": "25150:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "23938:3:77" + "src": "25143:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "24936:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "24944:3:18", + "type": "" + } + ], + "src": "24802:366:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25345:248:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "25355:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25367:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25378:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25363:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "25363:18:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "25355:4:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25402:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25413:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25398:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "25398:17:18" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "25421:4:18" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "25427:9:18" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "25417:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "25417:20:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "25391:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "25391:47:18" + }, + "nodeType": "YulExpressionStatement", + "src": "25391:47:18" + }, + { + "nodeType": "YulAssignment", + "src": "25447:139:18", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "25581:4:18" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "25455:124:18" + }, + "nodeType": "YulFunctionCall", + "src": "25455:131:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "25447:4:18" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "25325:9:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "25340:4:18", + "type": "" + } + ], + "src": "25174:419:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25705:68:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "25727:6:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25735:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25723:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "25723:14:18" + }, + { + "hexValue": "4552433732313a20696e76616c696420746f6b656e204944", + "kind": "string", + "nodeType": "YulLiteral", + "src": "25739:26:18", + "type": "", + "value": "ERC721: invalid token ID" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "25716:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "25716:50:18" + }, + "nodeType": "YulExpressionStatement", + "src": "25716:50:18" + } + ] + }, + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "25697:6:18", + "type": "" + } + ], + "src": "25599:174:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25925:220:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "25935:74:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "26001:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26006:2:18", + "type": "", + "value": "24" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "25942:58:18" + }, + "nodeType": "YulFunctionCall", + "src": "25942:67:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25935:3:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "26107:3:18" + } + ], + "functionName": { + "name": "store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f", + "nodeType": "YulIdentifier", + "src": "26018:88:18" + }, + "nodeType": "YulFunctionCall", + "src": "26018:93:18" + }, + "nodeType": "YulExpressionStatement", + "src": "26018:93:18" + }, + { + "nodeType": "YulAssignment", + "src": "26120:19:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "26131:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26136:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26127:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "26127:12:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "26120:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "25913:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "25921:3:18", + "type": "" + } + ], + "src": "25779:366:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26322:248:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "26332:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26344:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26355:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26340:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "26340:18:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26332:4:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26379:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26390:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26375:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "26375:17:18" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26398:4:18" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26404:9:18" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "26394:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "26394:20:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "26368:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "26368:47:18" + }, + "nodeType": "YulExpressionStatement", + "src": "26368:47:18" + }, + { + "nodeType": "YulAssignment", + "src": "26424:139:18", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26558:4:18" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "26432:124:18" + }, + "nodeType": "YulFunctionCall", + "src": "26432:131:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26424:4:18" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "26302:9:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "26317:4:18", + "type": "" + } + ], + "src": "26151:419:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26682:71:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "26704:6:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26712:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26700:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "26700:14:18" + }, + { + "hexValue": "43616e6e6f74206d696e7420746f207a65726f2061646472657373", + "kind": "string", + "nodeType": "YulLiteral", + "src": "26716:29:18", + "type": "", + "value": "Cannot mint to zero address" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "26693:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "26693:53:18" + }, + "nodeType": "YulExpressionStatement", + "src": "26693:53:18" + } + ] + }, + "name": "store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "26674:6:18", + "type": "" + } + ], + "src": "26576:177:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26905:220:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "26915:74:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "26981:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26986:2:18", + "type": "", + "value": "27" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "26922:58:18" + }, + "nodeType": "YulFunctionCall", + "src": "26922:67:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "26915:3:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27087:3:18" + } + ], + "functionName": { + "name": "store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", + "nodeType": "YulIdentifier", + "src": "26998:88:18" + }, + "nodeType": "YulFunctionCall", + "src": "26998:93:18" + }, + "nodeType": "YulExpressionStatement", + "src": "26998:93:18" + }, + { + "nodeType": "YulAssignment", + "src": "27100:19:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27111:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27116:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27107:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27107:12:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "27100:3:18" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "26893:3:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "26901:3:18", + "type": "" + } + ], + "src": "26759:366:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27302:248:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "27312:26:18", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27324:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27335:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27320:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27320:18:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "27312:4:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27359:9:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27370:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27355:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27355:17:18" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "27378:4:18" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27384:9:18" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "27374:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27374:20:18" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "27348:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "27348:47:18" + }, + "nodeType": "YulExpressionStatement", + "src": "27348:47:18" + }, + { + "nodeType": "YulAssignment", + "src": "27404:139:18", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "27538:4:18" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "27412:124:18" + }, + "nodeType": "YulFunctionCall", + "src": "27412:131:18" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "27404:4:18" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "27282:9:18", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "27297:4:18", + "type": "" + } + ], + "src": "27131:419:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27662:122:18", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "27684:6:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27692:1:18", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27680:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27680:14:18" + }, + { + "hexValue": "4552433732313a2061646472657373207a65726f206973206e6f742061207661", + "kind": "string", + "nodeType": "YulLiteral", + "src": "27696:34:18", + "type": "", + "value": "ERC721: address zero is not a va" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "27673:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "27673:58:18" + }, + "nodeType": "YulExpressionStatement", + "src": "27673:58:18" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "27752:6:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27760:2:18", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27748:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "27748:15:18" + }, + { + "hexValue": "6c6964206f776e6572", + "kind": "string", + "nodeType": "YulLiteral", + "src": "27765:11:18", + "type": "", + "value": "lid owner" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "27741:6:18" + }, + "nodeType": "YulFunctionCall", + "src": "27741:36:18" + }, + "nodeType": "YulExpressionStatement", + "src": "27741:36:18" + } + ] + }, + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "27654:6:18", + "type": "" + } + ], + "src": "27556:228:18" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27936:220:18", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "27946:74:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28012:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28017:2:18", + "type": "", + "value": "41" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "27953:58:18" + }, + "nodeType": "YulFunctionCall", + "src": "27953:67:18" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27946:3:18" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28118:3:18" + } + ], + "functionName": { + "name": "store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159", + "nodeType": "YulIdentifier", + "src": "28029:88:18" + }, + "nodeType": "YulFunctionCall", + "src": "28029:93:18" + }, + "nodeType": "YulExpressionStatement", + "src": "28029:93:18" + }, + { + "nodeType": "YulAssignment", + "src": "28131:19:18", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28142:3:18" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28147:2:18", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28138:3:18" + }, + "nodeType": "YulFunctionCall", + "src": "28138:12:18" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "28131:3:18" } ] } @@ -14151,7 +15917,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "23731:3:77", + "src": "27924:3:18", "type": "" } ], @@ -14159,31 +15925,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "23739:3:77", + "src": "27932:3:18", "type": "" } ], - "src": "23597:366:77" + "src": "27790:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "24140:248:77", + "src": "28333:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "24150:26:77", + "src": "28343:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24162:9:77" + "src": "28355:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24173:2:77", + "src": "28366:2:18", "type": "", "value": "32" } @@ -14191,16 +15957,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24158:3:77" + "src": "28351:3:18" }, "nodeType": "YulFunctionCall", - "src": "24158:18:77" + "src": "28351:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24150:4:77" + "src": "28343:4:18" } ] }, @@ -14212,12 +15978,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24197:9:77" + "src": "28390:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24208:1:77", + "src": "28401:1:18", "type": "", "value": "0" } @@ -14225,68 +15991,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24193:3:77" + "src": "28386:3:18" }, "nodeType": "YulFunctionCall", - "src": "24193:17:77" + "src": "28386:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24216:4:77" + "src": "28409:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "24222:9:77" + "src": "28415:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24212:3:77" + "src": "28405:3:18" }, "nodeType": "YulFunctionCall", - "src": "24212:20:77" + "src": "28405:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24186:6:77" + "src": "28379:6:18" }, "nodeType": "YulFunctionCall", - "src": "24186:47:77" + "src": "28379:47:18" }, "nodeType": "YulExpressionStatement", - "src": "24186:47:77" + "src": "28379:47:18" }, { "nodeType": "YulAssignment", - "src": "24242:139:77", + "src": "28435:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24376:4:77" + "src": "28569:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "24250:124:77" + "src": "28443:124:18" }, "nodeType": "YulFunctionCall", - "src": "24250:131:77" + "src": "28443:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24242:4:77" + "src": "28435:4:18" } ] } @@ -14298,7 +16064,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "24120:9:77", + "src": "28313:9:18", "type": "" } ], @@ -14306,16 +16072,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "24135:4:77", + "src": "28328:4:18", "type": "" } ], - "src": "23969:419:77" + "src": "28162:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "24500:75:77", + "src": "28693:75:18", "statements": [ { "expression": { @@ -14325,12 +16091,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "24522:6:77" + "src": "28715:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24530:1:77", + "src": "28723:1:18", "type": "", "value": "0" } @@ -14338,16 +16104,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24518:3:77" + "src": "28711:3:18" }, "nodeType": "YulFunctionCall", - "src": "24518:14:77" + "src": "28711:14:18" }, { "hexValue": "55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "24534:33:77", + "src": "28727:33:18", "type": "", "value": "URI query for nonexistent token" } @@ -14355,13 +16121,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24511:6:77" + "src": "28704:6:18" }, "nodeType": "YulFunctionCall", - "src": "24511:57:77" + "src": "28704:57:18" }, "nodeType": "YulExpressionStatement", - "src": "24511:57:77" + "src": "28704:57:18" } ] }, @@ -14371,31 +16137,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "24492:6:77", + "src": "28685:6:18", "type": "" } ], - "src": "24394:181:77" + "src": "28587:181:18" }, { "body": { "nodeType": "YulBlock", - "src": "24727:220:77", + "src": "28920:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "24737:74:77", + "src": "28930:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24803:3:77" + "src": "28996:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24808:2:77", + "src": "29001:2:18", "type": "", "value": "31" } @@ -14403,16 +16169,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "24744:58:77" + "src": "28937:58:18" }, "nodeType": "YulFunctionCall", - "src": "24744:67:77" + "src": "28937:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24737:3:77" + "src": "28930:3:18" } ] }, @@ -14422,34 +16188,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24909:3:77" + "src": "29102:3:18" } ], "functionName": { "name": "store_literal_in_memory_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730", "nodeType": "YulIdentifier", - "src": "24820:88:77" + "src": "29013:88:18" }, "nodeType": "YulFunctionCall", - "src": "24820:93:77" + "src": "29013:93:18" }, "nodeType": "YulExpressionStatement", - "src": "24820:93:77" + "src": "29013:93:18" }, { "nodeType": "YulAssignment", - "src": "24922:19:77", + "src": "29115:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "24933:3:77" + "src": "29126:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24938:2:77", + "src": "29131:2:18", "type": "", "value": "32" } @@ -14457,16 +16223,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24929:3:77" + "src": "29122:3:18" }, "nodeType": "YulFunctionCall", - "src": "24929:12:77" + "src": "29122:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "24922:3:77" + "src": "29115:3:18" } ] } @@ -14478,7 +16244,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "24715:3:77", + "src": "28908:3:18", "type": "" } ], @@ -14486,31 +16252,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "24723:3:77", + "src": "28916:3:18", "type": "" } ], - "src": "24581:366:77" + "src": "28774:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "25124:248:77", + "src": "29317:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "25134:26:77", + "src": "29327:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25146:9:77" + "src": "29339:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25157:2:77", + "src": "29350:2:18", "type": "", "value": "32" } @@ -14518,16 +16284,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25142:3:77" + "src": "29335:3:18" }, "nodeType": "YulFunctionCall", - "src": "25142:18:77" + "src": "29335:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25134:4:77" + "src": "29327:4:18" } ] }, @@ -14539,12 +16305,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25181:9:77" + "src": "29374:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25192:1:77", + "src": "29385:1:18", "type": "", "value": "0" } @@ -14552,68 +16318,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25177:3:77" + "src": "29370:3:18" }, "nodeType": "YulFunctionCall", - "src": "25177:17:77" + "src": "29370:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25200:4:77" + "src": "29393:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25206:9:77" + "src": "29399:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25196:3:77" + "src": "29389:3:18" }, "nodeType": "YulFunctionCall", - "src": "25196:20:77" + "src": "29389:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25170:6:77" + "src": "29363:6:18" }, "nodeType": "YulFunctionCall", - "src": "25170:47:77" + "src": "29363:47:18" }, "nodeType": "YulExpressionStatement", - "src": "25170:47:77" + "src": "29363:47:18" }, { "nodeType": "YulAssignment", - "src": "25226:139:77", + "src": "29419:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25360:4:77" + "src": "29553:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "25234:124:77" + "src": "29427:124:18" }, "nodeType": "YulFunctionCall", - "src": "25234:131:77" + "src": "29427:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25226:4:77" + "src": "29419:4:18" } ] } @@ -14625,7 +16391,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25104:9:77", + "src": "29297:9:18", "type": "" } ], @@ -14633,31 +16399,31 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25119:4:77", + "src": "29312:4:18", "type": "" } ], - "src": "24953:419:77" + "src": "29146:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "25504:206:77", + "src": "29697:206:18", "statements": [ { "nodeType": "YulAssignment", - "src": "25514:26:77", + "src": "29707:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25526:9:77" + "src": "29719:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25537:2:77", + "src": "29730:2:18", "type": "", "value": "64" } @@ -14665,16 +16431,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25522:3:77" + "src": "29715:3:18" }, "nodeType": "YulFunctionCall", - "src": "25522:18:77" + "src": "29715:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25514:4:77" + "src": "29707:4:18" } ] }, @@ -14684,19 +16450,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "25594:6:77" + "src": "29787:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25607:9:77" + "src": "29800:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25618:1:77", + "src": "29811:1:18", "type": "", "value": "0" } @@ -14704,22 +16470,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25603:3:77" + "src": "29796:3:18" }, "nodeType": "YulFunctionCall", - "src": "25603:17:77" + "src": "29796:17:18" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "25550:43:77" + "src": "29743:43:18" }, "nodeType": "YulFunctionCall", - "src": "25550:71:77" + "src": "29743:71:18" }, "nodeType": "YulExpressionStatement", - "src": "25550:71:77" + "src": "29743:71:18" }, { "expression": { @@ -14727,19 +16493,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "25675:6:77" + "src": "29868:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25688:9:77" + "src": "29881:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25699:2:77", + "src": "29892:2:18", "type": "", "value": "32" } @@ -14747,22 +16513,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25684:3:77" + "src": "29877:3:18" }, "nodeType": "YulFunctionCall", - "src": "25684:18:77" + "src": "29877:18:18" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "25631:43:77" + "src": "29824:43:18" }, "nodeType": "YulFunctionCall", - "src": "25631:72:77" + "src": "29824:72:18" }, "nodeType": "YulExpressionStatement", - "src": "25631:72:77" + "src": "29824:72:18" } ] }, @@ -14772,19 +16538,19 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25468:9:77", + "src": "29661:9:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "25480:6:77", + "src": "29673:6:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "25488:6:77", + "src": "29681:6:18", "type": "" } ], @@ -14792,21 +16558,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25499:4:77", + "src": "29692:4:18", "type": "" } ], - "src": "25378:332:77" + "src": "29571:332:18" }, { "body": { "nodeType": "YulBlock", - "src": "25783:241:77", + "src": "29976:241:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "25888:22:77", + "src": "30081:22:18", "statements": [ { "expression": { @@ -14814,13 +16580,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "25890:16:77" + "src": "30083:16:18" }, "nodeType": "YulFunctionCall", - "src": "25890:18:77" + "src": "30083:18:18" }, "nodeType": "YulExpressionStatement", - "src": "25890:18:77" + "src": "30083:18:18" } ] }, @@ -14829,12 +16595,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "25860:6:77" + "src": "30053:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25868:18:77", + "src": "30061:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -14842,55 +16608,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "25857:2:77" + "src": "30050:2:18" }, "nodeType": "YulFunctionCall", - "src": "25857:30:77" + "src": "30050:30:18" }, "nodeType": "YulIf", - "src": "25854:56:77" + "src": "30047:56:18" }, { "nodeType": "YulAssignment", - "src": "25920:37:77", + "src": "30113:37:18", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "25950:6:77" + "src": "30143:6:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "25928:21:77" + "src": "30121:21:18" }, "nodeType": "YulFunctionCall", - "src": "25928:29:77" + "src": "30121:29:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "25920:4:77" + "src": "30113:4:18" } ] }, { "nodeType": "YulAssignment", - "src": "25994:23:77", + "src": "30187:23:18", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "26006:4:77" + "src": "30199:4:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26012:4:77", + "src": "30205:4:18", "type": "", "value": "0x20" } @@ -14898,16 +16664,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26002:3:77" + "src": "30195:3:18" }, "nodeType": "YulFunctionCall", - "src": "26002:15:77" + "src": "30195:15:18" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "25994:4:77" + "src": "30187:4:18" } ] } @@ -14919,7 +16685,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "25767:6:77", + "src": "29960:6:18", "type": "" } ], @@ -14927,20 +16693,20 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "25778:4:77", + "src": "29971:4:18", "type": "" } ], - "src": "25716:308:77" + "src": "29909:308:18" }, { "body": { "nodeType": "YulBlock", - "src": "26125:326:77", + "src": "30318:326:18", "statements": [ { "nodeType": "YulAssignment", - "src": "26135:75:77", + "src": "30328:75:18", "value": { "arguments": [ { @@ -14948,31 +16714,31 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "26202:6:77" + "src": "30395:6:18" } ], "functionName": { "name": "array_allocation_size_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "26160:41:77" + "src": "30353:41:18" }, "nodeType": "YulFunctionCall", - "src": "26160:49:77" + "src": "30353:49:18" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "26144:15:77" + "src": "30337:15:18" }, "nodeType": "YulFunctionCall", - "src": "26144:66:77" + "src": "30337:66:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "26135:5:77" + "src": "30328:5:18" } ] }, @@ -14982,39 +16748,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "26226:5:77" + "src": "30419:5:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26233:6:77" + "src": "30426:6:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26219:6:77" + "src": "30412:6:18" }, "nodeType": "YulFunctionCall", - "src": "26219:21:77" + "src": "30412:21:18" }, "nodeType": "YulExpressionStatement", - "src": "26219:21:77" + "src": "30412:21:18" }, { "nodeType": "YulVariableDeclaration", - "src": "26249:27:77", + "src": "30442:27:18", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "26264:5:77" + "src": "30457:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26271:4:77", + "src": "30464:4:18", "type": "", "value": "0x20" } @@ -15022,16 +16788,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26260:3:77" + "src": "30453:3:18" }, "nodeType": "YulFunctionCall", - "src": "26260:16:77" + "src": "30453:16:18" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "26253:3:77", + "src": "30446:3:18", "type": "" } ] @@ -15039,7 +16805,7 @@ { "body": { "nodeType": "YulBlock", - "src": "26314:83:77", + "src": "30507:83:18", "statements": [ { "expression": { @@ -15047,13 +16813,13 @@ "functionName": { "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulIdentifier", - "src": "26316:77:77" + "src": "30509:77:18" }, "nodeType": "YulFunctionCall", - "src": "26316:79:77" + "src": "30509:79:18" }, "nodeType": "YulExpressionStatement", - "src": "26316:79:77" + "src": "30509:79:18" } ] }, @@ -15064,38 +16830,38 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "26295:3:77" + "src": "30488:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26300:6:77" + "src": "30493:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26291:3:77" + "src": "30484:3:18" }, "nodeType": "YulFunctionCall", - "src": "26291:16:77" + "src": "30484:16:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "26309:3:77" + "src": "30502:3:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "26288:2:77" + "src": "30481:2:18" }, "nodeType": "YulFunctionCall", - "src": "26288:25:77" + "src": "30481:25:18" }, "nodeType": "YulIf", - "src": "26285:112:77" + "src": "30478:112:18" }, { "expression": { @@ -15103,29 +16869,29 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "26428:3:77" + "src": "30621:3:18" }, { "name": "dst", "nodeType": "YulIdentifier", - "src": "26433:3:77" + "src": "30626:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26438:6:77" + "src": "30631:6:18" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "26406:21:77" + "src": "30599:21:18" }, "nodeType": "YulFunctionCall", - "src": "26406:39:77" + "src": "30599:39:18" }, "nodeType": "YulExpressionStatement", - "src": "26406:39:77" + "src": "30599:39:18" } ] }, @@ -15135,19 +16901,19 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "26098:3:77", + "src": "30291:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "26103:6:77", + "src": "30296:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "26111:3:77", + "src": "30304:3:18", "type": "" } ], @@ -15155,21 +16921,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "26119:5:77", + "src": "30312:5:18", "type": "" } ], - "src": "26030:421:77" + "src": "30223:421:18" }, { "body": { "nodeType": "YulBlock", - "src": "26544:282:77", + "src": "30737:282:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "26593:83:77", + "src": "30786:83:18", "statements": [ { "expression": { @@ -15177,13 +16943,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "26595:77:77" + "src": "30788:77:18" }, "nodeType": "YulFunctionCall", - "src": "26595:79:77" + "src": "30788:79:18" }, "nodeType": "YulExpressionStatement", - "src": "26595:79:77" + "src": "30788:79:18" } ] }, @@ -15196,12 +16962,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "26572:6:77" + "src": "30765:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26580:4:77", + "src": "30773:4:18", "type": "", "value": "0x1f" } @@ -15209,68 +16975,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26568:3:77" + "src": "30761:3:18" }, "nodeType": "YulFunctionCall", - "src": "26568:17:77" + "src": "30761:17:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "26587:3:77" + "src": "30780:3:18" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "26564:3:77" + "src": "30757:3:18" }, "nodeType": "YulFunctionCall", - "src": "26564:27:77" + "src": "30757:27:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "26557:6:77" + "src": "30750:6:18" }, "nodeType": "YulFunctionCall", - "src": "26557:35:77" + "src": "30750:35:18" }, "nodeType": "YulIf", - "src": "26554:122:77" + "src": "30747:122:18" }, { "nodeType": "YulVariableDeclaration", - "src": "26685:27:77", + "src": "30878:27:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "26705:6:77" + "src": "30898:6:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "26699:5:77" + "src": "30892:5:18" }, "nodeType": "YulFunctionCall", - "src": "26699:13:77" + "src": "30892:13:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "26689:6:77", + "src": "30882:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "26721:99:77", + "src": "30914:99:18", "value": { "arguments": [ { @@ -15278,12 +17044,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "26793:6:77" + "src": "30986:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26801:4:77", + "src": "30994:4:18", "type": "", "value": "0x20" } @@ -15291,35 +17057,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26789:3:77" + "src": "30982:3:18" }, "nodeType": "YulFunctionCall", - "src": "26789:17:77" + "src": "30982:17:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "26808:6:77" + "src": "31001:6:18" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "26816:3:77" + "src": "31009:3:18" } ], "functionName": { "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "26730:58:77" + "src": "30923:58:18" }, "nodeType": "YulFunctionCall", - "src": "26730:90:77" + "src": "30923:90:18" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "26721:5:77" + "src": "30914:5:18" } ] } @@ -15331,13 +17097,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "26522:6:77", + "src": "30715:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "26530:3:77", + "src": "30723:3:18", "type": "" } ], @@ -15345,21 +17111,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "26538:5:77", + "src": "30731:5:18", "type": "" } ], - "src": "26471:355:77" + "src": "30664:355:18" }, { "body": { "nodeType": "YulBlock", - "src": "26919:437:77", + "src": "31112:437:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "26965:83:77", + "src": "31158:83:18", "statements": [ { "expression": { @@ -15367,13 +17133,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "26967:77:77" + "src": "31160:77:18" }, "nodeType": "YulFunctionCall", - "src": "26967:79:77" + "src": "31160:79:18" }, "nodeType": "YulExpressionStatement", - "src": "26967:79:77" + "src": "31160:79:18" } ] }, @@ -15384,26 +17150,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "26940:7:77" + "src": "31133:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26949:9:77" + "src": "31142:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "26936:3:77" + "src": "31129:3:18" }, "nodeType": "YulFunctionCall", - "src": "26936:23:77" + "src": "31129:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26961:2:77", + "src": "31154:2:18", "type": "", "value": "32" } @@ -15411,21 +17177,21 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "26932:3:77" + "src": "31125:3:18" }, "nodeType": "YulFunctionCall", - "src": "26932:32:77" + "src": "31125:32:18" }, "nodeType": "YulIf", - "src": "26929:119:77" + "src": "31122:119:18" }, { "nodeType": "YulBlock", - "src": "27058:291:77", + "src": "31251:291:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "27073:38:77", + "src": "31266:38:18", "value": { "arguments": [ { @@ -15433,12 +17199,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27097:9:77" + "src": "31290:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27108:1:77", + "src": "31301:1:18", "type": "", "value": "0" } @@ -15446,25 +17212,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27093:3:77" + "src": "31286:3:18" }, "nodeType": "YulFunctionCall", - "src": "27093:17:77" + "src": "31286:17:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "27087:5:77" + "src": "31280:5:18" }, "nodeType": "YulFunctionCall", - "src": "27087:24:77" + "src": "31280:24:18" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "27077:6:77", + "src": "31270:6:18", "type": "" } ] @@ -15472,7 +17238,7 @@ { "body": { "nodeType": "YulBlock", - "src": "27158:83:77", + "src": "31351:83:18", "statements": [ { "expression": { @@ -15480,13 +17246,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "27160:77:77" + "src": "31353:77:18" }, "nodeType": "YulFunctionCall", - "src": "27160:79:77" + "src": "31353:79:18" }, "nodeType": "YulExpressionStatement", - "src": "27160:79:77" + "src": "31353:79:18" } ] }, @@ -15495,12 +17261,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "27130:6:77" + "src": "31323:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27138:18:77", + "src": "31331:18:18", "type": "", "value": "0xffffffffffffffff" } @@ -15508,17 +17274,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "27127:2:77" + "src": "31320:2:18" }, "nodeType": "YulFunctionCall", - "src": "27127:30:77" + "src": "31320:30:18" }, "nodeType": "YulIf", - "src": "27124:117:77" + "src": "31317:117:18" }, { "nodeType": "YulAssignment", - "src": "27255:84:77", + "src": "31448:84:18", "value": { "arguments": [ { @@ -15526,41 +17292,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27311:9:77" + "src": "31504:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "27322:6:77" + "src": "31515:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27307:3:77" + "src": "31500:3:18" }, "nodeType": "YulFunctionCall", - "src": "27307:22:77" + "src": "31500:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "27331:7:77" + "src": "31524:7:18" } ], "functionName": { "name": "abi_decode_t_string_memory_ptr_fromMemory", "nodeType": "YulIdentifier", - "src": "27265:41:77" + "src": "31458:41:18" }, "nodeType": "YulFunctionCall", - "src": "27265:74:77" + "src": "31458:74:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "27255:6:77" + "src": "31448:6:18" } ] } @@ -15574,13 +17340,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26889:9:77", + "src": "31082:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "26900:7:77", + "src": "31093:7:18", "type": "" } ], @@ -15588,16 +17354,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "26912:6:77", + "src": "31105:6:18", "type": "" } ], - "src": "26832:524:77" + "src": "31025:524:18" }, { "body": { "nodeType": "YulBlock", - "src": "27468:118:77", + "src": "31661:118:18", "statements": [ { "expression": { @@ -15607,12 +17373,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "27490:6:77" + "src": "31683:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27498:1:77", + "src": "31691:1:18", "type": "", "value": "0" } @@ -15620,16 +17386,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27486:3:77" + "src": "31679:3:18" }, "nodeType": "YulFunctionCall", - "src": "27486:14:77" + "src": "31679:14:18" }, { "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", "kind": "string", "nodeType": "YulLiteral", - "src": "27502:34:77", + "src": "31695:34:18", "type": "", "value": "ERC721: transfer from incorrect " } @@ -15637,13 +17403,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27479:6:77" + "src": "31672:6:18" }, "nodeType": "YulFunctionCall", - "src": "27479:58:77" + "src": "31672:58:18" }, "nodeType": "YulExpressionStatement", - "src": "27479:58:77" + "src": "31672:58:18" }, { "expression": { @@ -15653,12 +17419,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "27558:6:77" + "src": "31751:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27566:2:77", + "src": "31759:2:18", "type": "", "value": "32" } @@ -15666,16 +17432,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27554:3:77" + "src": "31747:3:18" }, "nodeType": "YulFunctionCall", - "src": "27554:15:77" + "src": "31747:15:18" }, { "hexValue": "6f776e6572", "kind": "string", "nodeType": "YulLiteral", - "src": "27571:7:77", + "src": "31764:7:18", "type": "", "value": "owner" } @@ -15683,13 +17449,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27547:6:77" + "src": "31740:6:18" }, "nodeType": "YulFunctionCall", - "src": "27547:32:77" + "src": "31740:32:18" }, "nodeType": "YulExpressionStatement", - "src": "27547:32:77" + "src": "31740:32:18" } ] }, @@ -15699,31 +17465,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "27460:6:77", + "src": "31653:6:18", "type": "" } ], - "src": "27362:224:77" + "src": "31555:224:18" }, { "body": { "nodeType": "YulBlock", - "src": "27738:220:77", + "src": "31931:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "27748:74:77", + "src": "31941:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27814:3:77" + "src": "32007:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27819:2:77", + "src": "32012:2:18", "type": "", "value": "37" } @@ -15731,16 +17497,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "27755:58:77" + "src": "31948:58:18" }, "nodeType": "YulFunctionCall", - "src": "27755:67:77" + "src": "31948:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27748:3:77" + "src": "31941:3:18" } ] }, @@ -15750,34 +17516,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27920:3:77" + "src": "32113:3:18" } ], "functionName": { "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", "nodeType": "YulIdentifier", - "src": "27831:88:77" + "src": "32024:88:18" }, "nodeType": "YulFunctionCall", - "src": "27831:93:77" + "src": "32024:93:18" }, "nodeType": "YulExpressionStatement", - "src": "27831:93:77" + "src": "32024:93:18" }, { "nodeType": "YulAssignment", - "src": "27933:19:77", + "src": "32126:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27944:3:77" + "src": "32137:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27949:2:77", + "src": "32142:2:18", "type": "", "value": "64" } @@ -15785,16 +17551,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27940:3:77" + "src": "32133:3:18" }, "nodeType": "YulFunctionCall", - "src": "27940:12:77" + "src": "32133:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "27933:3:77" + "src": "32126:3:18" } ] } @@ -15806,7 +17572,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "27726:3:77", + "src": "31919:3:18", "type": "" } ], @@ -15814,31 +17580,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "27734:3:77", + "src": "31927:3:18", "type": "" } ], - "src": "27592:366:77" + "src": "31785:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "28135:248:77", + "src": "32328:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "28145:26:77", + "src": "32338:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28157:9:77" + "src": "32350:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28168:2:77", + "src": "32361:2:18", "type": "", "value": "32" } @@ -15846,16 +17612,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28153:3:77" + "src": "32346:3:18" }, "nodeType": "YulFunctionCall", - "src": "28153:18:77" + "src": "32346:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28145:4:77" + "src": "32338:4:18" } ] }, @@ -15867,12 +17633,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28192:9:77" + "src": "32385:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28203:1:77", + "src": "32396:1:18", "type": "", "value": "0" } @@ -15880,68 +17646,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28188:3:77" + "src": "32381:3:18" }, "nodeType": "YulFunctionCall", - "src": "28188:17:77" + "src": "32381:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28211:4:77" + "src": "32404:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28217:9:77" + "src": "32410:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "28207:3:77" + "src": "32400:3:18" }, "nodeType": "YulFunctionCall", - "src": "28207:20:77" + "src": "32400:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28181:6:77" + "src": "32374:6:18" }, "nodeType": "YulFunctionCall", - "src": "28181:47:77" + "src": "32374:47:18" }, "nodeType": "YulExpressionStatement", - "src": "28181:47:77" + "src": "32374:47:18" }, { "nodeType": "YulAssignment", - "src": "28237:139:77", + "src": "32430:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28371:4:77" + "src": "32564:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "28245:124:77" + "src": "32438:124:18" }, "nodeType": "YulFunctionCall", - "src": "28245:131:77" + "src": "32438:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28237:4:77" + "src": "32430:4:18" } ] } @@ -15953,7 +17719,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "28115:9:77", + "src": "32308:9:18", "type": "" } ], @@ -15961,16 +17727,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "28130:4:77", + "src": "32323:4:18", "type": "" } ], - "src": "27964:419:77" + "src": "32157:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "28495:117:77", + "src": "32688:117:18", "statements": [ { "expression": { @@ -15980,12 +17746,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28517:6:77" + "src": "32710:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28525:1:77", + "src": "32718:1:18", "type": "", "value": "0" } @@ -15993,16 +17759,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28513:3:77" + "src": "32706:3:18" }, "nodeType": "YulFunctionCall", - "src": "28513:14:77" + "src": "32706:14:18" }, { "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", "kind": "string", "nodeType": "YulLiteral", - "src": "28529:34:77", + "src": "32722:34:18", "type": "", "value": "ERC721: transfer to the zero add" } @@ -16010,13 +17776,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28506:6:77" + "src": "32699:6:18" }, "nodeType": "YulFunctionCall", - "src": "28506:58:77" + "src": "32699:58:18" }, "nodeType": "YulExpressionStatement", - "src": "28506:58:77" + "src": "32699:58:18" }, { "expression": { @@ -16026,12 +17792,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28585:6:77" + "src": "32778:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28593:2:77", + "src": "32786:2:18", "type": "", "value": "32" } @@ -16039,16 +17805,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28581:3:77" + "src": "32774:3:18" }, "nodeType": "YulFunctionCall", - "src": "28581:15:77" + "src": "32774:15:18" }, { "hexValue": "72657373", "kind": "string", "nodeType": "YulLiteral", - "src": "28598:6:77", + "src": "32791:6:18", "type": "", "value": "ress" } @@ -16056,13 +17822,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28574:6:77" + "src": "32767:6:18" }, "nodeType": "YulFunctionCall", - "src": "28574:31:77" + "src": "32767:31:18" }, "nodeType": "YulExpressionStatement", - "src": "28574:31:77" + "src": "32767:31:18" } ] }, @@ -16072,31 +17838,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "28487:6:77", + "src": "32680:6:18", "type": "" } ], - "src": "28389:223:77" + "src": "32582:223:18" }, { "body": { "nodeType": "YulBlock", - "src": "28764:220:77", + "src": "32957:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "28774:74:77", + "src": "32967:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28840:3:77" + "src": "33033:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28845:2:77", + "src": "33038:2:18", "type": "", "value": "36" } @@ -16104,16 +17870,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "28781:58:77" + "src": "32974:58:18" }, "nodeType": "YulFunctionCall", - "src": "28781:67:77" + "src": "32974:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28774:3:77" + "src": "32967:3:18" } ] }, @@ -16123,34 +17889,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28946:3:77" + "src": "33139:3:18" } ], "functionName": { "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", "nodeType": "YulIdentifier", - "src": "28857:88:77" + "src": "33050:88:18" }, "nodeType": "YulFunctionCall", - "src": "28857:93:77" + "src": "33050:93:18" }, "nodeType": "YulExpressionStatement", - "src": "28857:93:77" + "src": "33050:93:18" }, { "nodeType": "YulAssignment", - "src": "28959:19:77", + "src": "33152:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28970:3:77" + "src": "33163:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28975:2:77", + "src": "33168:2:18", "type": "", "value": "64" } @@ -16158,16 +17924,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28966:3:77" + "src": "33159:3:18" }, "nodeType": "YulFunctionCall", - "src": "28966:12:77" + "src": "33159:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "28959:3:77" + "src": "33152:3:18" } ] } @@ -16179,7 +17945,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "28752:3:77", + "src": "32945:3:18", "type": "" } ], @@ -16187,31 +17953,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "28760:3:77", + "src": "32953:3:18", "type": "" } ], - "src": "28618:366:77" + "src": "32811:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "29161:248:77", + "src": "33354:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "29171:26:77", + "src": "33364:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29183:9:77" + "src": "33376:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29194:2:77", + "src": "33387:2:18", "type": "", "value": "32" } @@ -16219,16 +17985,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29179:3:77" + "src": "33372:3:18" }, "nodeType": "YulFunctionCall", - "src": "29179:18:77" + "src": "33372:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29171:4:77" + "src": "33364:4:18" } ] }, @@ -16240,12 +18006,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29218:9:77" + "src": "33411:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29229:1:77", + "src": "33422:1:18", "type": "", "value": "0" } @@ -16253,68 +18019,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29214:3:77" + "src": "33407:3:18" }, "nodeType": "YulFunctionCall", - "src": "29214:17:77" + "src": "33407:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29237:4:77" + "src": "33430:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29243:9:77" + "src": "33436:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "29233:3:77" + "src": "33426:3:18" }, "nodeType": "YulFunctionCall", - "src": "29233:20:77" + "src": "33426:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29207:6:77" + "src": "33400:6:18" }, "nodeType": "YulFunctionCall", - "src": "29207:47:77" + "src": "33400:47:18" }, "nodeType": "YulExpressionStatement", - "src": "29207:47:77" + "src": "33400:47:18" }, { "nodeType": "YulAssignment", - "src": "29263:139:77", + "src": "33456:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29397:4:77" + "src": "33590:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "29271:124:77" + "src": "33464:124:18" }, "nodeType": "YulFunctionCall", - "src": "29271:131:77" + "src": "33464:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29263:4:77" + "src": "33456:4:18" } ] } @@ -16326,7 +18092,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "29141:9:77", + "src": "33334:9:18", "type": "" } ], @@ -16334,16 +18100,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "29156:4:77", + "src": "33349:4:18", "type": "" } ], - "src": "28990:419:77" + "src": "33183:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "29521:69:77", + "src": "33714:69:18", "statements": [ { "expression": { @@ -16353,12 +18119,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29543:6:77" + "src": "33736:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29551:1:77", + "src": "33744:1:18", "type": "", "value": "0" } @@ -16366,16 +18132,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29539:3:77" + "src": "33732:3:18" }, "nodeType": "YulFunctionCall", - "src": "29539:14:77" + "src": "33732:14:18" }, { "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", "kind": "string", "nodeType": "YulLiteral", - "src": "29555:27:77", + "src": "33748:27:18", "type": "", "value": "ERC721: approve to caller" } @@ -16383,13 +18149,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29532:6:77" + "src": "33725:6:18" }, "nodeType": "YulFunctionCall", - "src": "29532:51:77" + "src": "33725:51:18" }, "nodeType": "YulExpressionStatement", - "src": "29532:51:77" + "src": "33725:51:18" } ] }, @@ -16399,31 +18165,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29513:6:77", + "src": "33706:6:18", "type": "" } ], - "src": "29415:175:77" + "src": "33608:175:18" }, { "body": { "nodeType": "YulBlock", - "src": "29742:220:77", + "src": "33935:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "29752:74:77", + "src": "33945:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29818:3:77" + "src": "34011:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29823:2:77", + "src": "34016:2:18", "type": "", "value": "25" } @@ -16431,16 +18197,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "29759:58:77" + "src": "33952:58:18" }, "nodeType": "YulFunctionCall", - "src": "29759:67:77" + "src": "33952:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29752:3:77" + "src": "33945:3:18" } ] }, @@ -16450,34 +18216,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29924:3:77" + "src": "34117:3:18" } ], "functionName": { "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", "nodeType": "YulIdentifier", - "src": "29835:88:77" + "src": "34028:88:18" }, "nodeType": "YulFunctionCall", - "src": "29835:93:77" + "src": "34028:93:18" }, "nodeType": "YulExpressionStatement", - "src": "29835:93:77" + "src": "34028:93:18" }, { "nodeType": "YulAssignment", - "src": "29937:19:77", + "src": "34130:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29948:3:77" + "src": "34141:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29953:2:77", + "src": "34146:2:18", "type": "", "value": "32" } @@ -16485,16 +18251,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29944:3:77" + "src": "34137:3:18" }, "nodeType": "YulFunctionCall", - "src": "29944:12:77" + "src": "34137:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "29937:3:77" + "src": "34130:3:18" } ] } @@ -16506,7 +18272,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "29730:3:77", + "src": "33923:3:18", "type": "" } ], @@ -16514,31 +18280,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "29738:3:77", + "src": "33931:3:18", "type": "" } ], - "src": "29596:366:77" + "src": "33789:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "30139:248:77", + "src": "34332:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "30149:26:77", + "src": "34342:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30161:9:77" + "src": "34354:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30172:2:77", + "src": "34365:2:18", "type": "", "value": "32" } @@ -16546,16 +18312,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30157:3:77" + "src": "34350:3:18" }, "nodeType": "YulFunctionCall", - "src": "30157:18:77" + "src": "34350:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30149:4:77" + "src": "34342:4:18" } ] }, @@ -16567,12 +18333,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30196:9:77" + "src": "34389:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30207:1:77", + "src": "34400:1:18", "type": "", "value": "0" } @@ -16580,68 +18346,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30192:3:77" + "src": "34385:3:18" }, "nodeType": "YulFunctionCall", - "src": "30192:17:77" + "src": "34385:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30215:4:77" + "src": "34408:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30221:9:77" + "src": "34414:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "30211:3:77" + "src": "34404:3:18" }, "nodeType": "YulFunctionCall", - "src": "30211:20:77" + "src": "34404:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30185:6:77" + "src": "34378:6:18" }, "nodeType": "YulFunctionCall", - "src": "30185:47:77" + "src": "34378:47:18" }, "nodeType": "YulExpressionStatement", - "src": "30185:47:77" + "src": "34378:47:18" }, { "nodeType": "YulAssignment", - "src": "30241:139:77", + "src": "34434:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30375:4:77" + "src": "34568:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "30249:124:77" + "src": "34442:124:18" }, "nodeType": "YulFunctionCall", - "src": "30249:131:77" + "src": "34442:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30241:4:77" + "src": "34434:4:18" } ] } @@ -16653,7 +18419,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "30119:9:77", + "src": "34312:9:18", "type": "" } ], @@ -16661,16 +18427,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "30134:4:77", + "src": "34327:4:18", "type": "" } ], - "src": "29968:419:77" + "src": "34161:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "30499:131:77", + "src": "34692:131:18", "statements": [ { "expression": { @@ -16680,12 +18446,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30521:6:77" + "src": "34714:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30529:1:77", + "src": "34722:1:18", "type": "", "value": "0" } @@ -16693,16 +18459,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30517:3:77" + "src": "34710:3:18" }, "nodeType": "YulFunctionCall", - "src": "30517:14:77" + "src": "34710:14:18" }, { "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", "kind": "string", "nodeType": "YulLiteral", - "src": "30533:34:77", + "src": "34726:34:18", "type": "", "value": "ERC721: transfer to non ERC721Re" } @@ -16710,13 +18476,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30510:6:77" + "src": "34703:6:18" }, "nodeType": "YulFunctionCall", - "src": "30510:58:77" + "src": "34703:58:18" }, "nodeType": "YulExpressionStatement", - "src": "30510:58:77" + "src": "34703:58:18" }, { "expression": { @@ -16726,12 +18492,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "30589:6:77" + "src": "34782:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30597:2:77", + "src": "34790:2:18", "type": "", "value": "32" } @@ -16739,16 +18505,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30585:3:77" + "src": "34778:3:18" }, "nodeType": "YulFunctionCall", - "src": "30585:15:77" + "src": "34778:15:18" }, { "hexValue": "63656976657220696d706c656d656e746572", "kind": "string", "nodeType": "YulLiteral", - "src": "30602:20:77", + "src": "34795:20:18", "type": "", "value": "ceiver implementer" } @@ -16756,13 +18522,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30578:6:77" + "src": "34771:6:18" }, "nodeType": "YulFunctionCall", - "src": "30578:45:77" + "src": "34771:45:18" }, "nodeType": "YulExpressionStatement", - "src": "30578:45:77" + "src": "34771:45:18" } ] }, @@ -16772,31 +18538,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "30491:6:77", + "src": "34684:6:18", "type": "" } ], - "src": "30393:237:77" + "src": "34586:237:18" }, { "body": { "nodeType": "YulBlock", - "src": "30782:220:77", + "src": "34975:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "30792:74:77", + "src": "34985:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30858:3:77" + "src": "35051:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30863:2:77", + "src": "35056:2:18", "type": "", "value": "50" } @@ -16804,16 +18570,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "30799:58:77" + "src": "34992:58:18" }, "nodeType": "YulFunctionCall", - "src": "30799:67:77" + "src": "34992:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30792:3:77" + "src": "34985:3:18" } ] }, @@ -16823,34 +18589,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30964:3:77" + "src": "35157:3:18" } ], "functionName": { "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", "nodeType": "YulIdentifier", - "src": "30875:88:77" + "src": "35068:88:18" }, "nodeType": "YulFunctionCall", - "src": "30875:93:77" + "src": "35068:93:18" }, "nodeType": "YulExpressionStatement", - "src": "30875:93:77" + "src": "35068:93:18" }, { "nodeType": "YulAssignment", - "src": "30977:19:77", + "src": "35170:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30988:3:77" + "src": "35181:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30993:2:77", + "src": "35186:2:18", "type": "", "value": "64" } @@ -16858,16 +18624,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30984:3:77" + "src": "35177:3:18" }, "nodeType": "YulFunctionCall", - "src": "30984:12:77" + "src": "35177:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "30977:3:77" + "src": "35170:3:18" } ] } @@ -16879,7 +18645,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "30770:3:77", + "src": "34963:3:18", "type": "" } ], @@ -16887,31 +18653,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "30778:3:77", + "src": "34971:3:18", "type": "" } ], - "src": "30636:366:77" + "src": "34829:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "31179:248:77", + "src": "35372:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "31189:26:77", + "src": "35382:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31201:9:77" + "src": "35394:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31212:2:77", + "src": "35405:2:18", "type": "", "value": "32" } @@ -16919,16 +18685,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31197:3:77" + "src": "35390:3:18" }, "nodeType": "YulFunctionCall", - "src": "31197:18:77" + "src": "35390:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "31189:4:77" + "src": "35382:4:18" } ] }, @@ -16940,12 +18706,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31236:9:77" + "src": "35429:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31247:1:77", + "src": "35440:1:18", "type": "", "value": "0" } @@ -16953,68 +18719,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31232:3:77" + "src": "35425:3:18" }, "nodeType": "YulFunctionCall", - "src": "31232:17:77" + "src": "35425:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "31255:4:77" + "src": "35448:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31261:9:77" + "src": "35454:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "31251:3:77" + "src": "35444:3:18" }, "nodeType": "YulFunctionCall", - "src": "31251:20:77" + "src": "35444:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31225:6:77" + "src": "35418:6:18" }, "nodeType": "YulFunctionCall", - "src": "31225:47:77" + "src": "35418:47:18" }, "nodeType": "YulExpressionStatement", - "src": "31225:47:77" + "src": "35418:47:18" }, { "nodeType": "YulAssignment", - "src": "31281:139:77", + "src": "35474:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "31415:4:77" + "src": "35608:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "31289:124:77" + "src": "35482:124:18" }, "nodeType": "YulFunctionCall", - "src": "31289:131:77" + "src": "35482:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "31281:4:77" + "src": "35474:4:18" } ] } @@ -17026,7 +18792,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "31159:9:77", + "src": "35352:9:18", "type": "" } ], @@ -17034,16 +18800,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "31174:4:77", + "src": "35367:4:18", "type": "" } ], - "src": "31008:419:77" + "src": "35201:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "31539:66:77", + "src": "35732:66:18", "statements": [ { "expression": { @@ -17053,12 +18819,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "31561:6:77" + "src": "35754:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31569:1:77", + "src": "35762:1:18", "type": "", "value": "0" } @@ -17066,16 +18832,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31557:3:77" + "src": "35750:3:18" }, "nodeType": "YulFunctionCall", - "src": "31557:14:77" + "src": "35750:14:18" }, { "hexValue": "546f6b656e206e6f74207472616e7366657261626c65", "kind": "string", "nodeType": "YulLiteral", - "src": "31573:24:77", + "src": "35766:24:18", "type": "", "value": "Token not transferable" } @@ -17083,13 +18849,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31550:6:77" + "src": "35743:6:18" }, "nodeType": "YulFunctionCall", - "src": "31550:48:77" + "src": "35743:48:18" }, "nodeType": "YulExpressionStatement", - "src": "31550:48:77" + "src": "35743:48:18" } ] }, @@ -17099,31 +18865,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "31531:6:77", + "src": "35724:6:18", "type": "" } ], - "src": "31433:172:77" + "src": "35626:172:18" }, { "body": { "nodeType": "YulBlock", - "src": "31757:220:77", + "src": "35950:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "31767:74:77", + "src": "35960:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31833:3:77" + "src": "36026:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31838:2:77", + "src": "36031:2:18", "type": "", "value": "22" } @@ -17131,16 +18897,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "31774:58:77" + "src": "35967:58:18" }, "nodeType": "YulFunctionCall", - "src": "31774:67:77" + "src": "35967:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31767:3:77" + "src": "35960:3:18" } ] }, @@ -17150,34 +18916,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31939:3:77" + "src": "36132:3:18" } ], "functionName": { "name": "store_literal_in_memory_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6", "nodeType": "YulIdentifier", - "src": "31850:88:77" + "src": "36043:88:18" }, "nodeType": "YulFunctionCall", - "src": "31850:93:77" + "src": "36043:93:18" }, "nodeType": "YulExpressionStatement", - "src": "31850:93:77" + "src": "36043:93:18" }, { "nodeType": "YulAssignment", - "src": "31952:19:77", + "src": "36145:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31963:3:77" + "src": "36156:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31968:2:77", + "src": "36161:2:18", "type": "", "value": "32" } @@ -17185,16 +18951,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31959:3:77" + "src": "36152:3:18" }, "nodeType": "YulFunctionCall", - "src": "31959:12:77" + "src": "36152:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "31952:3:77" + "src": "36145:3:18" } ] } @@ -17206,7 +18972,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "31745:3:77", + "src": "35938:3:18", "type": "" } ], @@ -17214,31 +18980,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "31753:3:77", + "src": "35946:3:18", "type": "" } ], - "src": "31611:366:77" + "src": "35804:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "32154:248:77", + "src": "36347:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "32164:26:77", + "src": "36357:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32176:9:77" + "src": "36369:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32187:2:77", + "src": "36380:2:18", "type": "", "value": "32" } @@ -17246,16 +19012,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32172:3:77" + "src": "36365:3:18" }, "nodeType": "YulFunctionCall", - "src": "32172:18:77" + "src": "36365:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32164:4:77" + "src": "36357:4:18" } ] }, @@ -17267,12 +19033,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32211:9:77" + "src": "36404:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32222:1:77", + "src": "36415:1:18", "type": "", "value": "0" } @@ -17280,68 +19046,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32207:3:77" + "src": "36400:3:18" }, "nodeType": "YulFunctionCall", - "src": "32207:17:77" + "src": "36400:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32230:4:77" + "src": "36423:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32236:9:77" + "src": "36429:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "32226:3:77" + "src": "36419:3:18" }, "nodeType": "YulFunctionCall", - "src": "32226:20:77" + "src": "36419:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32200:6:77" + "src": "36393:6:18" }, "nodeType": "YulFunctionCall", - "src": "32200:47:77" + "src": "36393:47:18" }, "nodeType": "YulExpressionStatement", - "src": "32200:47:77" + "src": "36393:47:18" }, { "nodeType": "YulAssignment", - "src": "32256:139:77", + "src": "36449:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32390:4:77" + "src": "36583:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "32264:124:77" + "src": "36457:124:18" }, "nodeType": "YulFunctionCall", - "src": "32264:131:77" + "src": "36457:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32256:4:77" + "src": "36449:4:18" } ] } @@ -17353,7 +19119,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "32134:9:77", + "src": "36327:9:18", "type": "" } ], @@ -17361,30 +19127,30 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "32149:4:77", + "src": "36342:4:18", "type": "" } ], - "src": "31983:419:77" + "src": "36176:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "32522:34:77", + "src": "36715:34:18", "statements": [ { "nodeType": "YulAssignment", - "src": "32532:18:77", + "src": "36725:18:18", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "32547:3:77" + "src": "36740:3:18" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "32532:11:77" + "src": "36725:11:18" } ] } @@ -17396,13 +19162,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "32494:3:77", + "src": "36687:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "32499:6:77", + "src": "36692:6:18", "type": "" } ], @@ -17410,16 +19176,16 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "32510:11:77", + "src": "36703:11:18", "type": "" } ], - "src": "32408:148:77" + "src": "36601:148:18" }, { "body": { "nodeType": "YulBlock", - "src": "32668:67:77", + "src": "36861:67:18", "statements": [ { "expression": { @@ -17429,12 +19195,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "32690:6:77" + "src": "36883:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32698:1:77", + "src": "36891:1:18", "type": "", "value": "0" } @@ -17442,16 +19208,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32686:3:77" + "src": "36879:3:18" }, "nodeType": "YulFunctionCall", - "src": "32686:14:77" + "src": "36879:14:18" }, { "hexValue": "416363657373436f6e74726f6c3a206163636f756e7420", "kind": "string", "nodeType": "YulLiteral", - "src": "32702:25:77", + "src": "36895:25:18", "type": "", "value": "AccessControl: account " } @@ -17459,13 +19225,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32679:6:77" + "src": "36872:6:18" }, "nodeType": "YulFunctionCall", - "src": "32679:49:77" + "src": "36872:49:18" }, "nodeType": "YulExpressionStatement", - "src": "32679:49:77" + "src": "36872:49:18" } ] }, @@ -17475,31 +19241,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "32660:6:77", + "src": "36853:6:18", "type": "" } ], - "src": "32562:173:77" + "src": "36755:173:18" }, { "body": { "nodeType": "YulBlock", - "src": "32905:238:77", + "src": "37098:238:18", "statements": [ { "nodeType": "YulAssignment", - "src": "32915:92:77", + "src": "37108:92:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "32999:3:77" + "src": "37192:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33004:2:77", + "src": "37197:2:18", "type": "", "value": "23" } @@ -17507,16 +19273,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "32922:76:77" + "src": "37115:76:18" }, "nodeType": "YulFunctionCall", - "src": "32922:85:77" + "src": "37115:85:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "32915:3:77" + "src": "37108:3:18" } ] }, @@ -17526,34 +19292,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33105:3:77" + "src": "37298:3:18" } ], "functionName": { "name": "store_literal_in_memory_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874", "nodeType": "YulIdentifier", - "src": "33016:88:77" + "src": "37209:88:18" }, "nodeType": "YulFunctionCall", - "src": "33016:93:77" + "src": "37209:93:18" }, "nodeType": "YulExpressionStatement", - "src": "33016:93:77" + "src": "37209:93:18" }, { "nodeType": "YulAssignment", - "src": "33118:19:77", + "src": "37311:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33129:3:77" + "src": "37322:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33134:2:77", + "src": "37327:2:18", "type": "", "value": "23" } @@ -17561,16 +19327,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33125:3:77" + "src": "37318:3:18" }, "nodeType": "YulFunctionCall", - "src": "33125:12:77" + "src": "37318:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "33118:3:77" + "src": "37311:3:18" } ] } @@ -17582,7 +19348,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "32893:3:77", + "src": "37086:3:18", "type": "" } ], @@ -17590,74 +19356,74 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "32901:3:77", + "src": "37094:3:18", "type": "" } ], - "src": "32741:402:77" + "src": "36934:402:18" }, { "body": { "nodeType": "YulBlock", - "src": "33259:267:77", + "src": "37452:267:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "33269:53:77", + "src": "37462:53:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "33316:5:77" + "src": "37509:5:18" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "33283:32:77" + "src": "37476:32:18" }, "nodeType": "YulFunctionCall", - "src": "33283:39:77" + "src": "37476:39:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "33273:6:77", + "src": "37466:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "33331:96:77", + "src": "37524:96:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33415:3:77" + "src": "37608:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "33420:6:77" + "src": "37613:6:18" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "33338:76:77" + "src": "37531:76:18" }, "nodeType": "YulFunctionCall", - "src": "33338:89:77" + "src": "37531:89:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33331:3:77" + "src": "37524:3:18" } ] }, @@ -17669,12 +19435,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "33462:5:77" + "src": "37655:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33469:4:77", + "src": "37662:4:18", "type": "", "value": "0x20" } @@ -17682,62 +19448,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33458:3:77" + "src": "37651:3:18" }, "nodeType": "YulFunctionCall", - "src": "33458:16:77" + "src": "37651:16:18" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "33476:3:77" + "src": "37669:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "33481:6:77" + "src": "37674:6:18" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "33436:21:77" + "src": "37629:21:18" }, "nodeType": "YulFunctionCall", - "src": "33436:52:77" + "src": "37629:52:18" }, "nodeType": "YulExpressionStatement", - "src": "33436:52:77" + "src": "37629:52:18" }, { "nodeType": "YulAssignment", - "src": "33497:23:77", + "src": "37690:23:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33508:3:77" + "src": "37701:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "33513:6:77" + "src": "37706:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33504:3:77" + "src": "37697:3:18" }, "nodeType": "YulFunctionCall", - "src": "33504:16:77" + "src": "37697:16:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "33497:3:77" + "src": "37690:3:18" } ] } @@ -17749,13 +19515,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "33240:5:77", + "src": "37433:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "33247:3:77", + "src": "37440:3:18", "type": "" } ], @@ -17763,16 +19529,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "33255:3:77", + "src": "37448:3:18", "type": "" } ], - "src": "33149:377:77" + "src": "37342:377:18" }, { "body": { "nodeType": "YulBlock", - "src": "33638:61:77", + "src": "37831:61:18", "statements": [ { "expression": { @@ -17782,12 +19548,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "33660:6:77" + "src": "37853:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33668:1:77", + "src": "37861:1:18", "type": "", "value": "0" } @@ -17795,16 +19561,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "33656:3:77" + "src": "37849:3:18" }, "nodeType": "YulFunctionCall", - "src": "33656:14:77" + "src": "37849:14:18" }, { "hexValue": "206973206d697373696e6720726f6c6520", "kind": "string", "nodeType": "YulLiteral", - "src": "33672:19:77", + "src": "37865:19:18", "type": "", "value": " is missing role " } @@ -17812,13 +19578,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33649:6:77" + "src": "37842:6:18" }, "nodeType": "YulFunctionCall", - "src": "33649:43:77" + "src": "37842:43:18" }, "nodeType": "YulExpressionStatement", - "src": "33649:43:77" + "src": "37842:43:18" } ] }, @@ -17828,31 +19594,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "33630:6:77", + "src": "37823:6:18", "type": "" } ], - "src": "33532:167:77" + "src": "37725:167:18" }, { "body": { "nodeType": "YulBlock", - "src": "33869:238:77", + "src": "38062:238:18", "statements": [ { "nodeType": "YulAssignment", - "src": "33879:92:77", + "src": "38072:92:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33963:3:77" + "src": "38156:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33968:2:77", + "src": "38161:2:18", "type": "", "value": "17" } @@ -17860,16 +19626,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "33886:76:77" + "src": "38079:76:18" }, "nodeType": "YulFunctionCall", - "src": "33886:85:77" + "src": "38079:85:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "33879:3:77" + "src": "38072:3:18" } ] }, @@ -17879,34 +19645,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34069:3:77" + "src": "38262:3:18" } ], "functionName": { "name": "store_literal_in_memory_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69", "nodeType": "YulIdentifier", - "src": "33980:88:77" + "src": "38173:88:18" }, "nodeType": "YulFunctionCall", - "src": "33980:93:77" + "src": "38173:93:18" }, "nodeType": "YulExpressionStatement", - "src": "33980:93:77" + "src": "38173:93:18" }, { "nodeType": "YulAssignment", - "src": "34082:19:77", + "src": "38275:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34093:3:77" + "src": "38286:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "34098:2:77", + "src": "38291:2:18", "type": "", "value": "17" } @@ -17914,16 +19680,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "34089:3:77" + "src": "38282:3:18" }, "nodeType": "YulFunctionCall", - "src": "34089:12:77" + "src": "38282:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "34082:3:77" + "src": "38275:3:18" } ] } @@ -17935,7 +19701,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "33857:3:77", + "src": "38050:3:18", "type": "" } ], @@ -17943,148 +19709,148 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "33865:3:77", + "src": "38058:3:18", "type": "" } ], - "src": "33705:402:77" + "src": "37898:402:18" }, { "body": { "nodeType": "YulBlock", - "src": "34499:581:77", + "src": "38692:581:18", "statements": [ { "nodeType": "YulAssignment", - "src": "34510:155:77", + "src": "38703:155:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34661:3:77" + "src": "38854:3:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_da0d07ce4a2849fbfc4cb9d6f939e9bd93016c372ca4a5ff14fe06caf3d67874_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "34517:142:77" + "src": "38710:142:18" }, "nodeType": "YulFunctionCall", - "src": "34517:148:77" + "src": "38710:148:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34510:3:77" + "src": "38703:3:18" } ] }, { "nodeType": "YulAssignment", - "src": "34675:102:77", + "src": "38868:102:18", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "34764:6:77" + "src": "38957:6:18" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "34773:3:77" + "src": "38966:3:18" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "34682:81:77" + "src": "38875:81:18" }, "nodeType": "YulFunctionCall", - "src": "34682:95:77" + "src": "38875:95:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34675:3:77" + "src": "38868:3:18" } ] }, { "nodeType": "YulAssignment", - "src": "34787:155:77", + "src": "38980:155:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34938:3:77" + "src": "39131:3:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_f986ce851518a691bccd44ea42a5a185d1b866ef6cb07984a09b81694d20ab69_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "34794:142:77" + "src": "38987:142:18" }, "nodeType": "YulFunctionCall", - "src": "34794:148:77" + "src": "38987:148:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34787:3:77" + "src": "38980:3:18" } ] }, { "nodeType": "YulAssignment", - "src": "34952:102:77", + "src": "39145:102:18", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "35041:6:77" + "src": "39234:6:18" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "35050:3:77" + "src": "39243:3:18" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "34959:81:77" + "src": "39152:81:18" }, "nodeType": "YulFunctionCall", - "src": "34959:95:77" + "src": "39152:95:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "34952:3:77" + "src": "39145:3:18" } ] }, { "nodeType": "YulAssignment", - "src": "35064:10:77", + "src": "39257:10:18", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "35071:3:77" + "src": "39264:3:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "35064:3:77" + "src": "39257:3:18" } ] } @@ -18096,19 +19862,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "34470:3:77", + "src": "38663:3:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "34476:6:77", + "src": "38669:6:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "34484:6:77", + "src": "38677:6:18", "type": "" } ], @@ -18116,41 +19882,41 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "34495:3:77", + "src": "38688:3:18", "type": "" } ], - "src": "34113:967:77" + "src": "38306:967:18" }, { "body": { "nodeType": "YulBlock", - "src": "35144:40:77", + "src": "39337:40:18", "statements": [ { "nodeType": "YulAssignment", - "src": "35155:22:77", + "src": "39348:22:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "35171:5:77" + "src": "39364:5:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "35165:5:77" + "src": "39358:5:18" }, "nodeType": "YulFunctionCall", - "src": "35165:12:77" + "src": "39358:12:18" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "35155:6:77" + "src": "39348:6:18" } ] } @@ -18162,7 +19928,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "35127:5:77", + "src": "39320:5:18", "type": "" } ], @@ -18170,16 +19936,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "35137:6:77", + "src": "39330:6:18", "type": "" } ], - "src": "35086:98:77" + "src": "39279:98:18" }, { "body": { "nodeType": "YulBlock", - "src": "35285:73:77", + "src": "39478:73:18", "statements": [ { "expression": { @@ -18187,39 +19953,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "35302:3:77" + "src": "39495:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "35307:6:77" + "src": "39500:6:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "35295:6:77" + "src": "39488:6:18" }, "nodeType": "YulFunctionCall", - "src": "35295:19:77" + "src": "39488:19:18" }, "nodeType": "YulExpressionStatement", - "src": "35295:19:77" + "src": "39488:19:18" }, { "nodeType": "YulAssignment", - "src": "35323:29:77", + "src": "39516:29:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "35342:3:77" + "src": "39535:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35347:4:77", + "src": "39540:4:18", "type": "", "value": "0x20" } @@ -18227,16 +19993,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35338:3:77" + "src": "39531:3:18" }, "nodeType": "YulFunctionCall", - "src": "35338:14:77" + "src": "39531:14:18" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "35323:11:77" + "src": "39516:11:18" } ] } @@ -18248,13 +20014,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "35257:3:77", + "src": "39450:3:18", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "35262:6:77", + "src": "39455:6:18", "type": "" } ], @@ -18262,74 +20028,74 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "35273:11:77", + "src": "39466:11:18", "type": "" } ], - "src": "35190:168:77" + "src": "39383:168:18" }, { "body": { "nodeType": "YulBlock", - "src": "35454:270:77", + "src": "39647:270:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "35464:52:77", + "src": "39657:52:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "35510:5:77" + "src": "39703:5:18" } ], "functionName": { "name": "array_length_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "35478:31:77" + "src": "39671:31:18" }, "nodeType": "YulFunctionCall", - "src": "35478:38:77" + "src": "39671:38:18" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "35468:6:77", + "src": "39661:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "35525:77:77", + "src": "39718:77:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "35590:3:77" + "src": "39783:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "35595:6:77" + "src": "39788:6:18" } ], "functionName": { "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "35532:57:77" + "src": "39725:57:18" }, "nodeType": "YulFunctionCall", - "src": "35532:70:77" + "src": "39725:70:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "35525:3:77" + "src": "39718:3:18" } ] }, @@ -18341,12 +20107,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "35637:5:77" + "src": "39830:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35644:4:77", + "src": "39837:4:18", "type": "", "value": "0x20" } @@ -18354,73 +20120,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35633:3:77" + "src": "39826:3:18" }, "nodeType": "YulFunctionCall", - "src": "35633:16:77" + "src": "39826:16:18" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "35651:3:77" + "src": "39844:3:18" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "35656:6:77" + "src": "39849:6:18" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "35611:21:77" + "src": "39804:21:18" }, "nodeType": "YulFunctionCall", - "src": "35611:52:77" + "src": "39804:52:18" }, "nodeType": "YulExpressionStatement", - "src": "35611:52:77" + "src": "39804:52:18" }, { "nodeType": "YulAssignment", - "src": "35672:46:77", + "src": "39865:46:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "35683:3:77" + "src": "39876:3:18" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "35710:6:77" + "src": "39903:6:18" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "35688:21:77" + "src": "39881:21:18" }, "nodeType": "YulFunctionCall", - "src": "35688:29:77" + "src": "39881:29:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35679:3:77" + "src": "39872:3:18" }, "nodeType": "YulFunctionCall", - "src": "35679:39:77" + "src": "39872:39:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "35672:3:77" + "src": "39865:3:18" } ] } @@ -18432,13 +20198,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "35435:5:77", + "src": "39628:5:18", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "35442:3:77", + "src": "39635:3:18", "type": "" } ], @@ -18446,31 +20212,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "35450:3:77", + "src": "39643:3:18", "type": "" } ], - "src": "35364:360:77" + "src": "39557:360:18" }, { "body": { "nodeType": "YulBlock", - "src": "35930:440:77", + "src": "40123:440:18", "statements": [ { "nodeType": "YulAssignment", - "src": "35940:27:77", + "src": "40133:27:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "35952:9:77" + "src": "40145:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "35963:3:77", + "src": "40156:3:18", "type": "", "value": "128" } @@ -18478,16 +20244,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "35948:3:77" + "src": "40141:3:18" }, "nodeType": "YulFunctionCall", - "src": "35948:19:77" + "src": "40141:19:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "35940:4:77" + "src": "40133:4:18" } ] }, @@ -18497,19 +20263,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "36021:6:77" + "src": "40214:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36034:9:77" + "src": "40227:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36045:1:77", + "src": "40238:1:18", "type": "", "value": "0" } @@ -18517,22 +20283,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36030:3:77" + "src": "40223:3:18" }, "nodeType": "YulFunctionCall", - "src": "36030:17:77" + "src": "40223:17:18" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "35977:43:77" + "src": "40170:43:18" }, "nodeType": "YulFunctionCall", - "src": "35977:71:77" + "src": "40170:71:18" }, "nodeType": "YulExpressionStatement", - "src": "35977:71:77" + "src": "40170:71:18" }, { "expression": { @@ -18540,19 +20306,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "36102:6:77" + "src": "40295:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36115:9:77" + "src": "40308:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36126:2:77", + "src": "40319:2:18", "type": "", "value": "32" } @@ -18560,22 +20326,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36111:3:77" + "src": "40304:3:18" }, "nodeType": "YulFunctionCall", - "src": "36111:18:77" + "src": "40304:18:18" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "36058:43:77" + "src": "40251:43:18" }, "nodeType": "YulFunctionCall", - "src": "36058:72:77" + "src": "40251:72:18" }, "nodeType": "YulExpressionStatement", - "src": "36058:72:77" + "src": "40251:72:18" }, { "expression": { @@ -18583,19 +20349,19 @@ { "name": "value2", "nodeType": "YulIdentifier", - "src": "36184:6:77" + "src": "40377:6:18" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36197:9:77" + "src": "40390:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36208:2:77", + "src": "40401:2:18", "type": "", "value": "64" } @@ -18603,22 +20369,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36193:3:77" + "src": "40386:3:18" }, "nodeType": "YulFunctionCall", - "src": "36193:18:77" + "src": "40386:18:18" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "36140:43:77" + "src": "40333:43:18" }, "nodeType": "YulFunctionCall", - "src": "36140:72:77" + "src": "40333:72:18" }, "nodeType": "YulExpressionStatement", - "src": "36140:72:77" + "src": "40333:72:18" }, { "expression": { @@ -18628,12 +20394,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36233:9:77" + "src": "40426:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36244:2:77", + "src": "40437:2:18", "type": "", "value": "96" } @@ -18641,73 +20407,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36229:3:77" + "src": "40422:3:18" }, "nodeType": "YulFunctionCall", - "src": "36229:18:77" + "src": "40422:18:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "36253:4:77" + "src": "40446:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36259:9:77" + "src": "40452:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "36249:3:77" + "src": "40442:3:18" }, "nodeType": "YulFunctionCall", - "src": "36249:20:77" + "src": "40442:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "36222:6:77" + "src": "40415:6:18" }, "nodeType": "YulFunctionCall", - "src": "36222:48:77" + "src": "40415:48:18" }, "nodeType": "YulExpressionStatement", - "src": "36222:48:77" + "src": "40415:48:18" }, { "nodeType": "YulAssignment", - "src": "36279:84:77", + "src": "40472:84:18", "value": { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "36349:6:77" + "src": "40542:6:18" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "36358:4:77" + "src": "40551:4:18" } ], "functionName": { "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "36287:61:77" + "src": "40480:61:18" }, "nodeType": "YulFunctionCall", - "src": "36287:76:77" + "src": "40480:76:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "36279:4:77" + "src": "40472:4:18" } ] } @@ -18719,31 +20485,31 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "35878:9:77", + "src": "40071:9:18", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "35890:6:77", + "src": "40083:6:18", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "35898:6:77", + "src": "40091:6:18", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "35906:6:77", + "src": "40099:6:18", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "35914:6:77", + "src": "40107:6:18", "type": "" } ], @@ -18751,41 +20517,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "35925:4:77", + "src": "40118:4:18", "type": "" } ], - "src": "35730:640:77" + "src": "39923:640:18" }, { "body": { "nodeType": "YulBlock", - "src": "36438:79:77", + "src": "40631:79:18", "statements": [ { "nodeType": "YulAssignment", - "src": "36448:22:77", + "src": "40641:22:18", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "36463:6:77" + "src": "40656:6:18" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "36457:5:77" + "src": "40650:5:18" }, "nodeType": "YulFunctionCall", - "src": "36457:13:77" + "src": "40650:13:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "36448:5:77" + "src": "40641:5:18" } ] }, @@ -18795,19 +20561,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "36505:5:77" + "src": "40698:5:18" } ], "functionName": { "name": "validator_revert_t_bytes4", "nodeType": "YulIdentifier", - "src": "36479:25:77" + "src": "40672:25:18" }, "nodeType": "YulFunctionCall", - "src": "36479:32:77" + "src": "40672:32:18" }, "nodeType": "YulExpressionStatement", - "src": "36479:32:77" + "src": "40672:32:18" } ] }, @@ -18817,13 +20583,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "36416:6:77", + "src": "40609:6:18", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "36424:3:77", + "src": "40617:3:18", "type": "" } ], @@ -18831,21 +20597,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "36432:5:77", + "src": "40625:5:18", "type": "" } ], - "src": "36376:141:77" + "src": "40569:141:18" }, { "body": { "nodeType": "YulBlock", - "src": "36599:273:77", + "src": "40792:273:18", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "36645:83:77", + "src": "40838:83:18", "statements": [ { "expression": { @@ -18853,13 +20619,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "36647:77:77" + "src": "40840:77:18" }, "nodeType": "YulFunctionCall", - "src": "36647:79:77" + "src": "40840:79:18" }, "nodeType": "YulExpressionStatement", - "src": "36647:79:77" + "src": "40840:79:18" } ] }, @@ -18870,26 +20636,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "36620:7:77" + "src": "40813:7:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36629:9:77" + "src": "40822:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "36616:3:77" + "src": "40809:3:18" }, "nodeType": "YulFunctionCall", - "src": "36616:23:77" + "src": "40809:23:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "36641:2:77", + "src": "40834:2:18", "type": "", "value": "32" } @@ -18897,25 +20663,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "36612:3:77" + "src": "40805:3:18" }, "nodeType": "YulFunctionCall", - "src": "36612:32:77" + "src": "40805:32:18" }, "nodeType": "YulIf", - "src": "36609:119:77" + "src": "40802:119:18" }, { "nodeType": "YulBlock", - "src": "36738:127:77", + "src": "40931:127:18", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "36753:15:77", + "src": "40946:15:18", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "36767:1:77", + "src": "40960:1:18", "type": "", "value": "0" }, @@ -18923,14 +20689,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "36757:6:77", + "src": "40950:6:18", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "36782:73:77", + "src": "40975:73:18", "value": { "arguments": [ { @@ -18938,41 +20704,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "36827:9:77" + "src": "41020:9:18" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "36838:6:77" + "src": "41031:6:18" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "36823:3:77" + "src": "41016:3:18" }, "nodeType": "YulFunctionCall", - "src": "36823:22:77" + "src": "41016:22:18" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "36847:7:77" + "src": "41040:7:18" } ], "functionName": { "name": "abi_decode_t_bytes4_fromMemory", "nodeType": "YulIdentifier", - "src": "36792:30:77" + "src": "40985:30:18" }, "nodeType": "YulFunctionCall", - "src": "36792:63:77" + "src": "40985:63:18" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "36782:6:77" + "src": "40975:6:18" } ] } @@ -18986,13 +20752,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "36569:9:77", + "src": "40762:9:18", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "36580:7:77", + "src": "40773:7:18", "type": "" } ], @@ -19000,16 +20766,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "36592:6:77", + "src": "40785:6:18", "type": "" } ], - "src": "36523:349:77" + "src": "40716:349:18" }, { "body": { "nodeType": "YulBlock", - "src": "36984:134:77", + "src": "41177:134:18", "statements": [ { "expression": { @@ -19019,12 +20785,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "37006:6:77" + "src": "41199:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37014:1:77", + "src": "41207:1:18", "type": "", "value": "0" } @@ -19032,16 +20798,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37002:3:77" + "src": "41195:3:18" }, "nodeType": "YulFunctionCall", - "src": "37002:14:77" + "src": "41195:14:18" }, { "hexValue": "455243373231456e756d657261626c653a20636f6e7365637574697665207472", "kind": "string", "nodeType": "YulLiteral", - "src": "37018:34:77", + "src": "41211:34:18", "type": "", "value": "ERC721Enumerable: consecutive tr" } @@ -19049,13 +20815,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "36995:6:77" + "src": "41188:6:18" }, "nodeType": "YulFunctionCall", - "src": "36995:58:77" + "src": "41188:58:18" }, "nodeType": "YulExpressionStatement", - "src": "36995:58:77" + "src": "41188:58:18" }, { "expression": { @@ -19065,12 +20831,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "37074:6:77" + "src": "41267:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37082:2:77", + "src": "41275:2:18", "type": "", "value": "32" } @@ -19078,16 +20844,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37070:3:77" + "src": "41263:3:18" }, "nodeType": "YulFunctionCall", - "src": "37070:15:77" + "src": "41263:15:18" }, { "hexValue": "616e7366657273206e6f7420737570706f72746564", "kind": "string", "nodeType": "YulLiteral", - "src": "37087:23:77", + "src": "41280:23:18", "type": "", "value": "ansfers not supported" } @@ -19095,13 +20861,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37063:6:77" + "src": "41256:6:18" }, "nodeType": "YulFunctionCall", - "src": "37063:48:77" + "src": "41256:48:18" }, "nodeType": "YulExpressionStatement", - "src": "37063:48:77" + "src": "41256:48:18" } ] }, @@ -19111,31 +20877,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "36976:6:77", + "src": "41169:6:18", "type": "" } ], - "src": "36878:240:77" + "src": "41071:240:18" }, { "body": { "nodeType": "YulBlock", - "src": "37270:220:77", + "src": "41463:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "37280:74:77", + "src": "41473:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "37346:3:77" + "src": "41539:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37351:2:77", + "src": "41544:2:18", "type": "", "value": "53" } @@ -19143,16 +20909,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "37287:58:77" + "src": "41480:58:18" }, "nodeType": "YulFunctionCall", - "src": "37287:67:77" + "src": "41480:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "37280:3:77" + "src": "41473:3:18" } ] }, @@ -19162,34 +20928,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "37452:3:77" + "src": "41645:3:18" } ], "functionName": { "name": "store_literal_in_memory_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314", "nodeType": "YulIdentifier", - "src": "37363:88:77" + "src": "41556:88:18" }, "nodeType": "YulFunctionCall", - "src": "37363:93:77" + "src": "41556:93:18" }, "nodeType": "YulExpressionStatement", - "src": "37363:93:77" + "src": "41556:93:18" }, { "nodeType": "YulAssignment", - "src": "37465:19:77", + "src": "41658:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "37476:3:77" + "src": "41669:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37481:2:77", + "src": "41674:2:18", "type": "", "value": "64" } @@ -19197,16 +20963,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37472:3:77" + "src": "41665:3:18" }, "nodeType": "YulFunctionCall", - "src": "37472:12:77" + "src": "41665:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "37465:3:77" + "src": "41658:3:18" } ] } @@ -19218,7 +20984,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "37258:3:77", + "src": "41451:3:18", "type": "" } ], @@ -19226,31 +20992,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "37266:3:77", + "src": "41459:3:18", "type": "" } ], - "src": "37124:366:77" + "src": "41317:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "37667:248:77", + "src": "41860:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "37677:26:77", + "src": "41870:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37689:9:77" + "src": "41882:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37700:2:77", + "src": "41893:2:18", "type": "", "value": "32" } @@ -19258,16 +21024,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37685:3:77" + "src": "41878:3:18" }, "nodeType": "YulFunctionCall", - "src": "37685:18:77" + "src": "41878:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37677:4:77" + "src": "41870:4:18" } ] }, @@ -19279,12 +21045,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37724:9:77" + "src": "41917:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "37735:1:77", + "src": "41928:1:18", "type": "", "value": "0" } @@ -19292,68 +21058,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "37720:3:77" + "src": "41913:3:18" }, "nodeType": "YulFunctionCall", - "src": "37720:17:77" + "src": "41913:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37743:4:77" + "src": "41936:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "37749:9:77" + "src": "41942:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "37739:3:77" + "src": "41932:3:18" }, "nodeType": "YulFunctionCall", - "src": "37739:20:77" + "src": "41932:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "37713:6:77" + "src": "41906:6:18" }, "nodeType": "YulFunctionCall", - "src": "37713:47:77" + "src": "41906:47:18" }, "nodeType": "YulExpressionStatement", - "src": "37713:47:77" + "src": "41906:47:18" }, { "nodeType": "YulAssignment", - "src": "37769:139:77", + "src": "41962:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37903:4:77" + "src": "42096:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "37777:124:77" + "src": "41970:124:18" }, "nodeType": "YulFunctionCall", - "src": "37777:131:77" + "src": "41970:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "37769:4:77" + "src": "41962:4:18" } ] } @@ -19365,7 +21131,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "37647:9:77", + "src": "41840:9:18", "type": "" } ], @@ -19373,75 +21139,75 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "37662:4:77", + "src": "41855:4:18", "type": "" } ], - "src": "37496:419:77" + "src": "41689:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "37969:300:77", + "src": "42162:300:18", "statements": [ { "nodeType": "YulAssignment", - "src": "37979:25:77", + "src": "42172:25:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "38002:1:77" + "src": "42195:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "37984:17:77" + "src": "42177:17:18" }, "nodeType": "YulFunctionCall", - "src": "37984:20:77" + "src": "42177:20:18" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "37979:1:77" + "src": "42172:1:18" } ] }, { "nodeType": "YulAssignment", - "src": "38013:25:77", + "src": "42206:25:18", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "38036:1:77" + "src": "42229:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "38018:17:77" + "src": "42211:17:18" }, "nodeType": "YulFunctionCall", - "src": "38018:20:77" + "src": "42211:20:18" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "38013:1:77" + "src": "42206:1:18" } ] }, { "body": { "nodeType": "YulBlock", - "src": "38211:22:77", + "src": "42404:22:18", "statements": [ { "expression": { @@ -19449,13 +21215,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "38213:16:77" + "src": "42406:16:18" }, "nodeType": "YulFunctionCall", - "src": "38213:18:77" + "src": "42406:18:18" }, "nodeType": "YulExpressionStatement", - "src": "38213:18:77" + "src": "42406:18:18" } ] }, @@ -19468,106 +21234,106 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "38123:1:77" + "src": "42316:1:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "38116:6:77" + "src": "42309:6:18" }, "nodeType": "YulFunctionCall", - "src": "38116:9:77" + "src": "42309:9:18" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "38109:6:77" + "src": "42302:6:18" }, "nodeType": "YulFunctionCall", - "src": "38109:17:77" + "src": "42302:17:18" }, { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "38131:1:77" + "src": "42324:1:18" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "38138:66:77", + "src": "42331:66:18", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "x", "nodeType": "YulIdentifier", - "src": "38206:1:77" + "src": "42399:1:18" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "38134:3:77" + "src": "42327:3:18" }, "nodeType": "YulFunctionCall", - "src": "38134:74:77" + "src": "42327:74:18" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "38128:2:77" + "src": "42321:2:18" }, "nodeType": "YulFunctionCall", - "src": "38128:81:77" + "src": "42321:81:18" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "38105:3:77" + "src": "42298:3:18" }, "nodeType": "YulFunctionCall", - "src": "38105:105:77" + "src": "42298:105:18" }, "nodeType": "YulIf", - "src": "38102:131:77" + "src": "42295:131:18" }, { "nodeType": "YulAssignment", - "src": "38243:20:77", + "src": "42436:20:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "38258:1:77" + "src": "42451:1:18" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "38261:1:77" + "src": "42454:1:18" } ], "functionName": { "name": "mul", "nodeType": "YulIdentifier", - "src": "38254:3:77" + "src": "42447:3:18" }, "nodeType": "YulFunctionCall", - "src": "38254:9:77" + "src": "42447:9:18" }, "variableNames": [ { "name": "product", "nodeType": "YulIdentifier", - "src": "38243:7:77" + "src": "42436:7:18" } ] } @@ -19579,13 +21345,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "37952:1:77", + "src": "42145:1:18", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "37955:1:77", + "src": "42148:1:18", "type": "" } ], @@ -19593,48 +21359,48 @@ { "name": "product", "nodeType": "YulTypedName", - "src": "37961:7:77", + "src": "42154:7:18", "type": "" } ], - "src": "37921:348:77" + "src": "42114:348:18" }, { "body": { "nodeType": "YulBlock", - "src": "38318:128:77", + "src": "42511:128:18", "statements": [ { "nodeType": "YulAssignment", - "src": "38328:33:77", + "src": "42521:33:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "38355:5:77" + "src": "42548:5:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "38337:17:77" + "src": "42530:17:18" }, "nodeType": "YulFunctionCall", - "src": "38337:24:77" + "src": "42530:24:18" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "38328:5:77" + "src": "42521:5:18" } ] }, { "body": { "nodeType": "YulBlock", - "src": "38389:22:77", + "src": "42582:22:18", "statements": [ { "expression": { @@ -19642,13 +21408,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "38391:16:77" + "src": "42584:16:18" }, "nodeType": "YulFunctionCall", - "src": "38391:18:77" + "src": "42584:18:18" }, "nodeType": "YulExpressionStatement", - "src": "38391:18:77" + "src": "42584:18:18" } ] }, @@ -19657,12 +21423,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "38376:5:77" + "src": "42569:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38383:4:77", + "src": "42576:4:18", "type": "", "value": "0x00" } @@ -19670,28 +21436,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "38373:2:77" + "src": "42566:2:18" }, "nodeType": "YulFunctionCall", - "src": "38373:15:77" + "src": "42566:15:18" }, "nodeType": "YulIf", - "src": "38370:41:77" + "src": "42563:41:18" }, { "nodeType": "YulAssignment", - "src": "38420:20:77", + "src": "42613:20:18", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "38431:5:77" + "src": "42624:5:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38438:1:77", + "src": "42631:1:18", "type": "", "value": "1" } @@ -19699,16 +21465,16 @@ "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "38427:3:77" + "src": "42620:3:18" }, "nodeType": "YulFunctionCall", - "src": "38427:13:77" + "src": "42620:13:18" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "38420:3:77" + "src": "42613:3:18" } ] } @@ -19720,7 +21486,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "38304:5:77", + "src": "42497:5:18", "type": "" } ], @@ -19728,16 +21494,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "38314:3:77", + "src": "42507:3:18", "type": "" } ], - "src": "38275:171:77" + "src": "42468:171:18" }, { "body": { "nodeType": "YulBlock", - "src": "38558:76:77", + "src": "42751:76:18", "statements": [ { "expression": { @@ -19747,12 +21513,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "38580:6:77" + "src": "42773:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38588:1:77", + "src": "42781:1:18", "type": "", "value": "0" } @@ -19760,16 +21526,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38576:3:77" + "src": "42769:3:18" }, "nodeType": "YulFunctionCall", - "src": "38576:14:77" + "src": "42769:14:18" }, { "hexValue": "537472696e67733a20686578206c656e67746820696e73756666696369656e74", "kind": "string", "nodeType": "YulLiteral", - "src": "38592:34:77", + "src": "42785:34:18", "type": "", "value": "Strings: hex length insufficient" } @@ -19777,13 +21543,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "38569:6:77" + "src": "42762:6:18" }, "nodeType": "YulFunctionCall", - "src": "38569:58:77" + "src": "42762:58:18" }, "nodeType": "YulExpressionStatement", - "src": "38569:58:77" + "src": "42762:58:18" } ] }, @@ -19793,31 +21559,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "38550:6:77", + "src": "42743:6:18", "type": "" } ], - "src": "38452:182:77" + "src": "42645:182:18" }, { "body": { "nodeType": "YulBlock", - "src": "38786:220:77", + "src": "42979:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "38796:74:77", + "src": "42989:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "38862:3:77" + "src": "43055:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38867:2:77", + "src": "43060:2:18", "type": "", "value": "32" } @@ -19825,16 +21591,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "38803:58:77" + "src": "42996:58:18" }, "nodeType": "YulFunctionCall", - "src": "38803:67:77" + "src": "42996:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "38796:3:77" + "src": "42989:3:18" } ] }, @@ -19844,34 +21610,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "38968:3:77" + "src": "43161:3:18" } ], "functionName": { "name": "store_literal_in_memory_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", "nodeType": "YulIdentifier", - "src": "38879:88:77" + "src": "43072:88:18" }, "nodeType": "YulFunctionCall", - "src": "38879:93:77" + "src": "43072:93:18" }, "nodeType": "YulExpressionStatement", - "src": "38879:93:77" + "src": "43072:93:18" }, { "nodeType": "YulAssignment", - "src": "38981:19:77", + "src": "43174:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "38992:3:77" + "src": "43185:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "38997:2:77", + "src": "43190:2:18", "type": "", "value": "32" } @@ -19879,16 +21645,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "38988:3:77" + "src": "43181:3:18" }, "nodeType": "YulFunctionCall", - "src": "38988:12:77" + "src": "43181:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "38981:3:77" + "src": "43174:3:18" } ] } @@ -19900,7 +21666,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "38774:3:77", + "src": "42967:3:18", "type": "" } ], @@ -19908,31 +21674,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "38782:3:77", + "src": "42975:3:18", "type": "" } ], - "src": "38640:366:77" + "src": "42833:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "39183:248:77", + "src": "43376:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "39193:26:77", + "src": "43386:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39205:9:77" + "src": "43398:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39216:2:77", + "src": "43409:2:18", "type": "", "value": "32" } @@ -19940,16 +21706,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39201:3:77" + "src": "43394:3:18" }, "nodeType": "YulFunctionCall", - "src": "39201:18:77" + "src": "43394:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39193:4:77" + "src": "43386:4:18" } ] }, @@ -19961,12 +21727,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39240:9:77" + "src": "43433:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39251:1:77", + "src": "43444:1:18", "type": "", "value": "0" } @@ -19974,68 +21740,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39236:3:77" + "src": "43429:3:18" }, "nodeType": "YulFunctionCall", - "src": "39236:17:77" + "src": "43429:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39259:4:77" + "src": "43452:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "39265:9:77" + "src": "43458:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "39255:3:77" + "src": "43448:3:18" }, "nodeType": "YulFunctionCall", - "src": "39255:20:77" + "src": "43448:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39229:6:77" + "src": "43422:6:18" }, "nodeType": "YulFunctionCall", - "src": "39229:47:77" + "src": "43422:47:18" }, "nodeType": "YulExpressionStatement", - "src": "39229:47:77" + "src": "43422:47:18" }, { "nodeType": "YulAssignment", - "src": "39285:139:77", + "src": "43478:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39419:4:77" + "src": "43612:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "39293:124:77" + "src": "43486:124:18" }, "nodeType": "YulFunctionCall", - "src": "39293:131:77" + "src": "43486:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "39285:4:77" + "src": "43478:4:18" } ] } @@ -20047,7 +21813,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "39163:9:77", + "src": "43356:9:18", "type": "" } ], @@ -20055,16 +21821,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "39178:4:77", + "src": "43371:4:18", "type": "" } ], - "src": "39012:419:77" + "src": "43205:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "39543:76:77", + "src": "43736:76:18", "statements": [ { "expression": { @@ -20074,12 +21840,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "39565:6:77" + "src": "43758:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39573:1:77", + "src": "43766:1:18", "type": "", "value": "0" } @@ -20087,16 +21853,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39561:3:77" + "src": "43754:3:18" }, "nodeType": "YulFunctionCall", - "src": "39561:14:77" + "src": "43754:14:18" }, { "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", "kind": "string", "nodeType": "YulLiteral", - "src": "39577:34:77", + "src": "43770:34:18", "type": "", "value": "ERC721: mint to the zero address" } @@ -20104,13 +21870,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "39554:6:77" + "src": "43747:6:18" }, "nodeType": "YulFunctionCall", - "src": "39554:58:77" + "src": "43747:58:18" }, "nodeType": "YulExpressionStatement", - "src": "39554:58:77" + "src": "43747:58:18" } ] }, @@ -20120,31 +21886,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "39535:6:77", + "src": "43728:6:18", "type": "" } ], - "src": "39437:182:77" + "src": "43630:182:18" }, { "body": { "nodeType": "YulBlock", - "src": "39771:220:77", + "src": "43964:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "39781:74:77", + "src": "43974:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "39847:3:77" + "src": "44040:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39852:2:77", + "src": "44045:2:18", "type": "", "value": "32" } @@ -20152,16 +21918,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "39788:58:77" + "src": "43981:58:18" }, "nodeType": "YulFunctionCall", - "src": "39788:67:77" + "src": "43981:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "39781:3:77" + "src": "43974:3:18" } ] }, @@ -20171,34 +21937,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "39953:3:77" + "src": "44146:3:18" } ], "functionName": { "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", "nodeType": "YulIdentifier", - "src": "39864:88:77" + "src": "44057:88:18" }, "nodeType": "YulFunctionCall", - "src": "39864:93:77" + "src": "44057:93:18" }, "nodeType": "YulExpressionStatement", - "src": "39864:93:77" + "src": "44057:93:18" }, { "nodeType": "YulAssignment", - "src": "39966:19:77", + "src": "44159:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "39977:3:77" + "src": "44170:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "39982:2:77", + "src": "44175:2:18", "type": "", "value": "32" } @@ -20206,16 +21972,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "39973:3:77" + "src": "44166:3:18" }, "nodeType": "YulFunctionCall", - "src": "39973:12:77" + "src": "44166:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "39966:3:77" + "src": "44159:3:18" } ] } @@ -20227,7 +21993,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "39759:3:77", + "src": "43952:3:18", "type": "" } ], @@ -20235,31 +22001,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "39767:3:77", + "src": "43960:3:18", "type": "" } ], - "src": "39625:366:77" + "src": "43818:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "40168:248:77", + "src": "44361:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "40178:26:77", + "src": "44371:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "40190:9:77" + "src": "44383:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40201:2:77", + "src": "44394:2:18", "type": "", "value": "32" } @@ -20267,16 +22033,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40186:3:77" + "src": "44379:3:18" }, "nodeType": "YulFunctionCall", - "src": "40186:18:77" + "src": "44379:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "40178:4:77" + "src": "44371:4:18" } ] }, @@ -20288,12 +22054,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "40225:9:77" + "src": "44418:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40236:1:77", + "src": "44429:1:18", "type": "", "value": "0" } @@ -20301,68 +22067,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40221:3:77" + "src": "44414:3:18" }, "nodeType": "YulFunctionCall", - "src": "40221:17:77" + "src": "44414:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "40244:4:77" + "src": "44437:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "40250:9:77" + "src": "44443:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "40240:3:77" + "src": "44433:3:18" }, "nodeType": "YulFunctionCall", - "src": "40240:20:77" + "src": "44433:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "40214:6:77" + "src": "44407:6:18" }, "nodeType": "YulFunctionCall", - "src": "40214:47:77" + "src": "44407:47:18" }, "nodeType": "YulExpressionStatement", - "src": "40214:47:77" + "src": "44407:47:18" }, { "nodeType": "YulAssignment", - "src": "40270:139:77", + "src": "44463:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "40404:4:77" + "src": "44597:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "40278:124:77" + "src": "44471:124:18" }, "nodeType": "YulFunctionCall", - "src": "40278:131:77" + "src": "44471:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "40270:4:77" + "src": "44463:4:18" } ] } @@ -20374,7 +22140,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "40148:9:77", + "src": "44341:9:18", "type": "" } ], @@ -20382,16 +22148,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "40163:4:77", + "src": "44356:4:18", "type": "" } ], - "src": "39997:419:77" + "src": "44190:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "40528:72:77", + "src": "44721:72:18", "statements": [ { "expression": { @@ -20401,12 +22167,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "40550:6:77" + "src": "44743:6:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40558:1:77", + "src": "44751:1:18", "type": "", "value": "0" } @@ -20414,16 +22180,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40546:3:77" + "src": "44739:3:18" }, "nodeType": "YulFunctionCall", - "src": "40546:14:77" + "src": "44739:14:18" }, { "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", "kind": "string", "nodeType": "YulLiteral", - "src": "40562:30:77", + "src": "44755:30:18", "type": "", "value": "ERC721: token already minted" } @@ -20431,13 +22197,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "40539:6:77" + "src": "44732:6:18" }, "nodeType": "YulFunctionCall", - "src": "40539:54:77" + "src": "44732:54:18" }, "nodeType": "YulExpressionStatement", - "src": "40539:54:77" + "src": "44732:54:18" } ] }, @@ -20447,31 +22213,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40520:6:77", + "src": "44713:6:18", "type": "" } ], - "src": "40422:178:77" + "src": "44615:178:18" }, { "body": { "nodeType": "YulBlock", - "src": "40752:220:77", + "src": "44945:220:18", "statements": [ { "nodeType": "YulAssignment", - "src": "40762:74:77", + "src": "44955:74:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40828:3:77" + "src": "45021:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40833:2:77", + "src": "45026:2:18", "type": "", "value": "28" } @@ -20479,16 +22245,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "40769:58:77" + "src": "44962:58:18" }, "nodeType": "YulFunctionCall", - "src": "40769:67:77" + "src": "44962:67:18" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40762:3:77" + "src": "44955:3:18" } ] }, @@ -20498,34 +22264,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40934:3:77" + "src": "45127:3:18" } ], "functionName": { "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", "nodeType": "YulIdentifier", - "src": "40845:88:77" + "src": "45038:88:18" }, "nodeType": "YulFunctionCall", - "src": "40845:93:77" + "src": "45038:93:18" }, "nodeType": "YulExpressionStatement", - "src": "40845:93:77" + "src": "45038:93:18" }, { "nodeType": "YulAssignment", - "src": "40947:19:77", + "src": "45140:19:18", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "40958:3:77" + "src": "45151:3:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "40963:2:77", + "src": "45156:2:18", "type": "", "value": "32" } @@ -20533,16 +22299,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "40954:3:77" + "src": "45147:3:18" }, "nodeType": "YulFunctionCall", - "src": "40954:12:77" + "src": "45147:12:18" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "40947:3:77" + "src": "45140:3:18" } ] } @@ -20554,7 +22320,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "40740:3:77", + "src": "44933:3:18", "type": "" } ], @@ -20562,31 +22328,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "40748:3:77", + "src": "44941:3:18", "type": "" } ], - "src": "40606:366:77" + "src": "44799:366:18" }, { "body": { "nodeType": "YulBlock", - "src": "41149:248:77", + "src": "45342:248:18", "statements": [ { "nodeType": "YulAssignment", - "src": "41159:26:77", + "src": "45352:26:18", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41171:9:77" + "src": "45364:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41182:2:77", + "src": "45375:2:18", "type": "", "value": "32" } @@ -20594,16 +22360,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41167:3:77" + "src": "45360:3:18" }, "nodeType": "YulFunctionCall", - "src": "41167:18:77" + "src": "45360:18:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "41159:4:77" + "src": "45352:4:18" } ] }, @@ -20615,12 +22381,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41206:9:77" + "src": "45399:9:18" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41217:1:77", + "src": "45410:1:18", "type": "", "value": "0" } @@ -20628,68 +22394,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "41202:3:77" + "src": "45395:3:18" }, "nodeType": "YulFunctionCall", - "src": "41202:17:77" + "src": "45395:17:18" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "41225:4:77" + "src": "45418:4:18" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "41231:9:77" + "src": "45424:9:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "41221:3:77" + "src": "45414:3:18" }, "nodeType": "YulFunctionCall", - "src": "41221:20:77" + "src": "45414:20:18" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41195:6:77" + "src": "45388:6:18" }, "nodeType": "YulFunctionCall", - "src": "41195:47:77" + "src": "45388:47:18" }, "nodeType": "YulExpressionStatement", - "src": "41195:47:77" + "src": "45388:47:18" }, { "nodeType": "YulAssignment", - "src": "41251:139:77", + "src": "45444:139:18", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "41385:4:77" + "src": "45578:4:18" } ], "functionName": { "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "41259:124:77" + "src": "45452:124:18" }, "nodeType": "YulFunctionCall", - "src": "41259:131:77" + "src": "45452:131:18" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "41251:4:77" + "src": "45444:4:18" } ] } @@ -20701,7 +22467,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "41129:9:77", + "src": "45322:9:18", "type": "" } ], @@ -20709,75 +22475,75 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "41144:4:77", + "src": "45337:4:18", "type": "" } ], - "src": "40978:419:77" + "src": "45171:419:18" }, { "body": { "nodeType": "YulBlock", - "src": "41448:146:77", + "src": "45641:146:18", "statements": [ { "nodeType": "YulAssignment", - "src": "41458:25:77", + "src": "45651:25:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "41481:1:77" + "src": "45674:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "41463:17:77" + "src": "45656:17:18" }, "nodeType": "YulFunctionCall", - "src": "41463:20:77" + "src": "45656:20:18" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "41458:1:77" + "src": "45651:1:18" } ] }, { "nodeType": "YulAssignment", - "src": "41492:25:77", + "src": "45685:25:18", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "41515:1:77" + "src": "45708:1:18" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "41497:17:77" + "src": "45690:17:18" }, "nodeType": "YulFunctionCall", - "src": "41497:20:77" + "src": "45690:20:18" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "41492:1:77" + "src": "45685:1:18" } ] }, { "body": { "nodeType": "YulBlock", - "src": "41539:22:77", + "src": "45732:22:18", "statements": [ { "expression": { @@ -20785,13 +22551,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "41541:16:77" + "src": "45734:16:18" }, "nodeType": "YulFunctionCall", - "src": "41541:18:77" + "src": "45734:18:18" }, "nodeType": "YulExpressionStatement", - "src": "41541:18:77" + "src": "45734:18:18" } ] }, @@ -20800,54 +22566,54 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "41533:1:77" + "src": "45726:1:18" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "41536:1:77" + "src": "45729:1:18" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "41530:2:77" + "src": "45723:2:18" }, "nodeType": "YulFunctionCall", - "src": "41530:8:77" + "src": "45723:8:18" }, "nodeType": "YulIf", - "src": "41527:34:77" + "src": "45720:34:18" }, { "nodeType": "YulAssignment", - "src": "41571:17:77", + "src": "45764:17:18", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "41583:1:77" + "src": "45776:1:18" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "41586:1:77" + "src": "45779:1:18" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "41579:3:77" + "src": "45772:3:18" }, "nodeType": "YulFunctionCall", - "src": "41579:9:77" + "src": "45772:9:18" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", - "src": "41571:4:77" + "src": "45764:4:18" } ] } @@ -20859,13 +22625,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "41434:1:77", + "src": "45627:1:18", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "41437:1:77", + "src": "45630:1:18", "type": "" } ], @@ -20873,16 +22639,16 @@ { "name": "diff", "nodeType": "YulTypedName", - "src": "41443:4:77", + "src": "45636:4:18", "type": "" } ], - "src": "41403:191:77" + "src": "45596:191:18" }, { "body": { "nodeType": "YulBlock", - "src": "41628:152:77", + "src": "45821:152:18", "statements": [ { "expression": { @@ -20890,14 +22656,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41645:1:77", + "src": "45838:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41648:77:77", + "src": "45841:77:18", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -20905,13 +22671,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41638:6:77" + "src": "45831:6:18" }, "nodeType": "YulFunctionCall", - "src": "41638:88:77" + "src": "45831:88:18" }, "nodeType": "YulExpressionStatement", - "src": "41638:88:77" + "src": "45831:88:18" }, { "expression": { @@ -20919,14 +22685,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41742:1:77", + "src": "45935:1:18", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41745:4:77", + "src": "45938:4:18", "type": "", "value": "0x31" } @@ -20934,13 +22700,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "41735:6:77" + "src": "45928:6:18" }, "nodeType": "YulFunctionCall", - "src": "41735:15:77" + "src": "45928:15:18" }, "nodeType": "YulExpressionStatement", - "src": "41735:15:77" + "src": "45928:15:18" }, { "expression": { @@ -20948,14 +22714,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "41766:1:77", + "src": "45959:1:18", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "41769:4:77", + "src": "45962:4:18", "type": "", "value": "0x24" } @@ -20963,32 +22729,32 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "41759:6:77" + "src": "45952:6:18" }, "nodeType": "YulFunctionCall", - "src": "41759:15:77" + "src": "45952:15:18" }, "nodeType": "YulExpressionStatement", - "src": "41759:15:77" + "src": "45952:15:18" } ] }, "name": "panic_error_0x31", "nodeType": "YulFunctionDefinition", - "src": "41600:180:77" + "src": "45793:180:18" } ] }, - "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 array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function 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 round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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 cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_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_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function 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_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_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 abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function 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 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 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_addresst_bool(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_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function 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_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_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_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__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_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__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_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: caller is not token owne\")\n\n mstore(add(memPtr, 32), \"r or approved\")\n\n }\n\n function abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__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_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: owner index ou\")\n\n mstore(add(memPtr, 32), \"t of bounds\")\n\n }\n\n function abi_encode_t_stringliteral_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n store_literal_in_memory_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c__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_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c_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_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not owner nor approved\")\n\n }\n\n function abi_encode_t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d__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_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: global index o\")\n\n mstore(add(memPtr, 32), \"ut of bounds\")\n\n }\n\n function abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc__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_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: invalid token ID\")\n\n }\n\n function abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__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_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9(memPtr) {\n\n mstore(add(memPtr, 0), \"Cannot mint to zero address\")\n\n }\n\n function abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9__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_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function store_literal_in_memory_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1(memPtr) {\n\n mstore(add(memPtr, 0), \"Exceed the total supply\")\n\n }\n\n function abi_encode_t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1__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_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: address zero is not a va\")\n\n mstore(add(memPtr, 32), \"lid owner\")\n\n }\n\n function abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__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_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730(memPtr) {\n\n mstore(add(memPtr, 0), \"URI query for nonexistent token\")\n\n }\n\n function abi_encode_t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730__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_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730_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 array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer from incorrect \")\n\n mstore(add(memPtr, 32), \"owner\")\n\n }\n\n function abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__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_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__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_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve to caller\")\n\n }\n\n function abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__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_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to non ERC721Re\")\n\n mstore(add(memPtr, 32), \"ceiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__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_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6(memPtr) {\n\n mstore(add(memPtr, 0), \"Token not transferable\")\n\n }\n\n function abi_encode_t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 22)\n store_literal_in_memory_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6__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_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6_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 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 array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: consecutive tr\")\n\n mstore(add(memPtr, 32), \"ansfers not supported\")\n\n }\n\n function abi_encode_t_stringliteral_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 53)\n store_literal_in_memory_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314__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_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314_to_t_string_memory_ptr_fromStack( 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 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 store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: mint to the zero address\")\n\n }\n\n function abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__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_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: token already minted\")\n\n }\n\n function abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__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_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_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": 77, + "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 array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function 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 round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\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 cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_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_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function 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_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_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 abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function 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 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 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 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 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_addresst_bool(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_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function 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_bytes_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function abi_decode_available_length_t_bytes_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_bytes_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // bytes\n function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_address(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_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_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approval to current owne\")\n\n mstore(add(memPtr, 32), \"r\")\n\n }\n\n function abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__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_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not to\")\n\n mstore(add(memPtr, 32), \"ken owner or approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n store_literal_in_memory_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83__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_c6e14a63ffb144eeef7cce6988e5dce07c60a7e0a7b1ef25dbe18c61483e0a83_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: caller is not token owne\")\n\n mstore(add(memPtr, 32), \"r or approved\")\n\n }\n\n function abi_encode_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n store_literal_in_memory_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af__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_12a8e5623d251e191fe4a291d9a59bcc01a4db7a1f5c20fc8de44358c18308af_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: owner index ou\")\n\n mstore(add(memPtr, 32), \"t of bounds\")\n\n }\n\n function abi_encode_t_stringliteral_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n store_literal_in_memory_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c__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_1d7f5dcf03a65f41ee49b0ab593e3851cfbe3fd7da53b6cf4eddd83c7df5734c_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_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d(memPtr) {\n\n mstore(add(memPtr, 0), \"Caller is not owner nor approved\")\n\n }\n\n function abi_encode_t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d__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_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a(memPtr) {\n\n mstore(add(memPtr, 0), \"tokenIds too small\")\n\n }\n\n function abi_encode_t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 18)\n store_literal_in_memory_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a__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_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef(memPtr) {\n\n mstore(add(memPtr, 0), \"tokenIds too many\")\n\n }\n\n function abi_encode_t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 17)\n store_literal_in_memory_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef__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_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function store_literal_in_memory_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1(memPtr) {\n\n mstore(add(memPtr, 0), \"Exceed the total supply\")\n\n }\n\n function abi_encode_t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n store_literal_in_memory_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1__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_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function 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 store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: global index o\")\n\n mstore(add(memPtr, 32), \"ut of bounds\")\n\n }\n\n function abi_encode_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc__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_d269a4e9f5820dcdb69ea21f528512eb9b927c8d846d48aa51c9219f461d4dcc_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: invalid token ID\")\n\n }\n\n function abi_encode_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n store_literal_in_memory_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f__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_b08d2b0fec7cc108ab049809a8beb42779d969a49299d0c317c907d9db22974f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9(memPtr) {\n\n mstore(add(memPtr, 0), \"Cannot mint to zero address\")\n\n }\n\n function abi_encode_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n store_literal_in_memory_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9__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_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: address zero is not a va\")\n\n mstore(add(memPtr, 32), \"lid owner\")\n\n }\n\n function abi_encode_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159__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_6d05c90094f31cfeb8f0eb86f0a513af3f7f8992991fbde41b08aa7960677159_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730(memPtr) {\n\n mstore(add(memPtr, 0), \"URI query for nonexistent token\")\n\n }\n\n function abi_encode_t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n store_literal_in_memory_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730__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_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730_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 array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := mload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer from incorrect \")\n\n mstore(add(memPtr, 32), \"owner\")\n\n }\n\n function abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__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_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to the zero add\")\n\n mstore(add(memPtr, 32), \"ress\")\n\n }\n\n function abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__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_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve to caller\")\n\n }\n\n function abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__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_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer to non ERC721Re\")\n\n mstore(add(memPtr, 32), \"ceiver implementer\")\n\n }\n\n function abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 50)\n store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__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_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6(memPtr) {\n\n mstore(add(memPtr, 0), \"Token not transferable\")\n\n }\n\n function abi_encode_t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 22)\n store_literal_in_memory_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6__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_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6_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 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 array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_bytes_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_tuple_t_address_t_address_t_uint256_t_bytes_memory_ptr__to_t_address_t_address_t_uint256_t_bytes_memory_ptr__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n tail := add(headStart, 128)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_address_to_t_address_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value2, add(headStart, 64))\n\n mstore(add(headStart, 96), sub(tail, headStart))\n tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack(value3, tail)\n\n }\n\n function abi_decode_t_bytes4_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_bytes4(value)\n }\n\n function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes4_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function store_literal_in_memory_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Enumerable: consecutive tr\")\n\n mstore(add(memPtr, 32), \"ansfers not supported\")\n\n }\n\n function abi_encode_t_stringliteral_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 53)\n store_literal_in_memory_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314__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_da49291af84b6a1e37ed9eacd9a67360593e4a0e561cb261a6a738f621783314_to_t_string_memory_ptr_fromStack( 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 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 store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: mint to the zero address\")\n\n }\n\n function abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6__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_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: token already minted\")\n\n }\n\n function abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 28)\n store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57__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_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_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": 18, "language": "Yul", "name": "#utility.yul" } ], - "sourceMap": "298:2984:73:-:0;;;647:395;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;751:5;758:7;1464:5:21;1456;:13;;;;;;;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;;;;;;;:::i;:::-;;1390:113;;788:11:73::1;774:25;;;;::::0;::::1;806:44;463:22;2198:4:0;831:18:73::0;::::1;806:13;;;:44;;:::i;:::-;857:46;528:24;2198:4:0;884:18:73::0;::::1;857:13;;;:46;;:::i;:::-;912:42;2198:4:0;923:18:73::0;::::1;943:10;912;;;:42;;:::i;:::-;961:35;528:24;985:10;961;;;:35;;:::i;:::-;1003:33;463:22;1025:10;1003;;;:33;;:::i;:::-;647:395:::0;;;298:2984;;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;6937:110::-;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;7587:233::-;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;3021:145::-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;640:96:30:-;693:7;719:10;712:17;;640:96;:::o;298:2984:73:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:77:-;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:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:308::-;1358:4;1448:18;1440:6;1437:30;1434:56;;;1470:18;;:::i;:::-;1434:56;1508:29;1530:6;1508:29;:::i;:::-;1500:37;;1592:4;1586;1582:15;1574:23;;1296:308;;;:::o;1610:307::-;1678:1;1688:113;1702:6;1699:1;1696:13;1688:113;;;1787:1;1782:3;1778:11;1772:18;1768:1;1763:3;1759:11;1752:39;1724:2;1721:1;1717:10;1712:15;;1688:113;;;1819:6;1816:1;1813:13;1810:101;;;1899:1;1890:6;1885:3;1881:16;1874:27;1810:101;1659:258;1610:307;;;:::o;1923:421::-;2012:5;2037:66;2053:49;2095:6;2053:49;:::i;:::-;2037:66;:::i;:::-;2028:75;;2126:6;2119:5;2112:21;2164:4;2157:5;2153:16;2202:3;2193:6;2188:3;2184:16;2181:25;2178:112;;;2209:79;;:::i;:::-;2178:112;2299:39;2331:6;2326:3;2321;2299:39;:::i;:::-;2018:326;1923:421;;;;;:::o;2364:355::-;2431:5;2480:3;2473:4;2465:6;2461:17;2457:27;2447:122;;2488:79;;:::i;:::-;2447:122;2598:6;2592:13;2623:90;2709:3;2701:6;2694:4;2686:6;2682:17;2623:90;:::i;:::-;2614:99;;2437:282;2364:355;;;;:::o;2725:77::-;2762:7;2791:5;2780:16;;2725:77;;;:::o;2808:122::-;2881:24;2899:5;2881:24;:::i;:::-;2874:5;2871:35;2861:63;;2920:1;2917;2910:12;2861:63;2808:122;:::o;2936:143::-;2993:5;3024:6;3018:13;3009:22;;3040:33;3067:5;3040:33;:::i;:::-;2936:143;;;;:::o;3085:1009::-;3193:6;3201;3209;3258:2;3246:9;3237:7;3233:23;3229:32;3226:119;;;3264:79;;:::i;:::-;3226:119;3405:1;3394:9;3390:17;3384:24;3435:18;3427:6;3424:30;3421:117;;;3457:79;;:::i;:::-;3421:117;3562:74;3628:7;3619:6;3608:9;3604:22;3562:74;:::i;:::-;3552:84;;3355:291;3706:2;3695:9;3691:18;3685:25;3737:18;3729:6;3726:30;3723:117;;;3759:79;;:::i;:::-;3723:117;3864:74;3930:7;3921:6;3910:9;3906:22;3864:74;:::i;:::-;3854:84;;3656:292;3987:2;4013:64;4069:7;4060:6;4049:9;4045:22;4013:64;:::i;:::-;4003:74;;3958:129;3085:1009;;;;;:::o;4100:180::-;4148:77;4145:1;4138:88;4245:4;4242:1;4235:15;4269:4;4266:1;4259:15;4286:320;4330:6;4367:1;4361:4;4357:12;4347:22;;4414:1;4408:4;4404:12;4435:18;4425:81;;4491:4;4483:6;4479:17;4469:27;;4425:81;4553:2;4545:6;4542:14;4522:18;4519:38;4516:84;;;4572:18;;:::i;:::-;4516:84;4337:269;4286:320;;;:::o;298:2984:73:-;;;;;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "298:2984:73:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1106:218;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:98:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3935:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1630:111:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;557:36:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2915:85;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4612:296:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4504:129:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4929:145;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1306:253:24;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3058:79:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6038:214:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4974:149:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2516:201:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1813:230:24;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2775:81:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2190:219:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2118:392:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:204:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3021:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2633:102:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3196:83:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2153:49:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4169:153:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1677:135:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5189:276:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;427:58:73;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1876:236;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;490:62;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5354:147:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4388:162:21;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1106:218:73;1259:4;1282:36;1306:11;1282:23;:36::i;:::-;1275:43;;1106:218;;;:::o;2471:98:21:-;2525:13;2557:5;2550:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2471:98;:::o;3935:167::-;4011:7;4030:23;4045:7;4030:14;:23::i;:::-;4071:15;:24;4087:7;4071:24;;;;;;;;;;;;;;;;;;;;;4064:31;;3935:167;;;:::o;3468:406::-;3548:13;3564:23;3579:7;3564:14;:23::i;:::-;3548:39;;3611:5;3605:11;;:2;:11;;;;3597:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3702:5;3686:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3711:37;3728:5;3735:12;:10;:12::i;:::-;3711:16;:37::i;:::-;3686:62;3665:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;3846:21;3855:2;3859:7;3846:8;:21::i;:::-;3538:336;3468:406;;:::o;1630:111:24:-;1691:7;1717:10;:17;;;;1710:24;;1630:111;:::o;557:36:73:-;;;:::o;2915:85::-;2967:27;528:24;2991:2;2967:10;:27::i;:::-;2915:85;:::o;4612:296:21:-;4771:41;4790:12;:10;:12::i;:::-;4804:7;4771:18;:41::i;:::-;4763:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;4873:28;4883:4;4889:2;4893:7;4873:9;:28::i;:::-;4612:296;;;:::o;4504:129:0:-;4578:7;4604:6;:12;4611:4;4604:12;;;;;;;;;;;:22;;;4597:29;;4504:129;;;:::o;4929:145::-;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;1306:253:24:-;1403:7;1438:23;1455:5;1438:16;:23::i;:::-;1430:5;:31;1422:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;1526:12;:19;1539:5;1526:19;;;;;;;;;;;;;;;:26;1546:5;1526:26;;;;;;;;;;;;1519:33;;1306:253;;;;:::o;3058:79:73:-;3107:24;463:22;3128:2;3107:9;:24::i;:::-;3058:79;:::o;6038:214:0:-;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;4974:149:21:-;5077:39;5094:4;5100:2;5104:7;5077:39;;;;;;;;;;;;:16;:39::i;:::-;4974:149;;;:::o;2516:201:73:-;463:22;2631:16:0;2642:4;2631:10;:16::i;:::-;2599:41:73::1;2618:12;:10;:12::i;:::-;2632:7;2599:18;:41::i;:::-;2583:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;2697:14;2703:7;2697:5;:14::i;:::-;2516:201:::0;;:::o;1813:230:24:-;1888:7;1923:30;:28;:30::i;:::-;1915:5;:38;1907:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;2019:10;2030:5;2019:17;;;;;;;;:::i;:::-;;;;;;;;;;2012:24;;1813:230;;;:::o;2775:81:73:-;2824:26;528:24;2847:2;2824:9;:26::i;:::-;2775:81;:::o;2190:219:21:-;2262:7;2281:13;2297:17;2306:7;2297:8;:17::i;:::-;2281:33;;2349:1;2332:19;;:5;:19;;;;2324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2397:5;2390:12;;;2190:219;;;:::o;2118:392:73:-;2184:7;528:24;2631:16:0;2642:4;2631:10;:16::i;:::-;2222:1:73::1;2208:16;;:2;:16;;;;2200:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2281:1;2267:11;:15;2263:108;;;2324:11;2318:1;2302:13;:11;:13::i;:::-;:17;;;;:::i;:::-;2301:34;;2293:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;2263:108;2377:27;:15;:25;:27::i;:::-;2411:15;2429:25;:15;:23;:25::i;:::-;2411:43;;2461:22;2471:2;2475:7;2461:9;:22::i;:::-;2497:7;2490:14;;;2118:392:::0;;;;:::o;1929:204:21:-;2001:7;2045:1;2028:19;;:5;:19;;;;2020:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2110:9;:16;2120:5;2110:16;;;;;;;;;;;;;;;;2103:23;;1929:204;;;:::o;3021:145:0:-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;2633:102:21:-;2689:13;2721:7;2714:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:102;:::o;3196:83:73:-;3248:25;463:22;3270:2;3248:10;:25::i;:::-;3196:83;:::o;2153:49:0:-;2198:4;2153:49;;;:::o;4169:153:21:-;4263:52;4282:12;:10;:12::i;:::-;4296:8;4306;4263:18;:52::i;:::-;4169:153;;:::o;1677:135:73:-;2198:4:0;1753:18:73;;2631:16:0;2642:4;2631:10;:16::i;:::-;1795:11:73::1;1780:12;;:26;;;;;;;;;;;;;;;;;;1677:135:::0;;:::o;5189:276:21:-;5319:41;5338:12;:10;:12::i;:::-;5352:7;5319:18;:41::i;:::-;5311:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;5420:38;5434:4;5440:2;5444:7;5453:4;5420:13;:38::i;:::-;5189:276;;;;:::o;427:58:73:-;463:22;427:58;:::o;1876:236::-;1951:13;1981:16;1989:7;1981;:16::i;:::-;1973:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;2057:12;;;;;;;;;;;2047:35;;;2091:4;2098:7;2047:59;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2040:66;;1876:236;;;:::o;490:62::-;528:24;490:62;:::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;4388:162:21:-;4485:4;4508:18;:25;4527:5;4508:25;;;;;;;;;;;;;;;:35;4534:8;4508:35;;;;;;;;;;;;;;;;;;;;;;;;;4501:42;;4388:162;;;;:::o;1005:222:24:-;1107:4;1145:35;1130:50;;;:11;:50;;;;:90;;;;1184:36;1208:11;1184:23;:36::i;:::-;1130:90;1123:97;;1005:222;;;:::o;13240:133:21:-;13321:16;13329:7;13321;:16::i;:::-;13313:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;13240:133;:::o;640:96:30:-;693:7;719:10;712:17;;640:96;:::o;12572:171:21:-;12673:2;12646:15;:24;12662:7;12646:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12728:7;12724:2;12690:46;;12699:23;12714:7;12699:14;:23::i;:::-;12690:46;;;;;;;;;;;;12572:171;;:::o;7404:261::-;7497:4;7513:13;7529:23;7544:7;7529:14;:23::i;:::-;7513:39;;7581:5;7570:16;;:7;:16;;;:52;;;;7590:32;7607:5;7614:7;7590:16;:32::i;:::-;7570:52;:87;;;;7650:7;7626:31;;:20;7638:7;7626:11;:20::i;:::-;:31;;;7570:87;7562:96;;;7404:261;;;;:::o;11257:1203::-;11381:4;11354:31;;:23;11369:7;11354:14;:23::i;:::-;:31;;;11346:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11459:1;11445:16;;:2;:16;;;;11437:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;11513:42;11534:4;11540:2;11544:7;11553:1;11513:20;:42::i;:::-;11682:4;11655:31;;:23;11670:7;11655:14;:23::i;:::-;:31;;;11647:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11797:15;:24;11813:7;11797:24;;;;;;;;;;;;11790:31;;;;;;;;;;;12284:1;12265:9;:15;12275:4;12265:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;12316:1;12299:9;:13;12309:2;12299:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;12356:2;12337:7;:16;12345:7;12337:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12393:7;12389:2;12374:27;;12383:4;12374:27;;;;;;;;;;;;12412:41;12432:4;12438:2;12442:7;12451:1;12412:19;:41::i;:::-;11257:1203;;;:::o;3460:103:0:-;3526:30;3537:4;3543:12;:10;:12::i;:::-;3526:10;:30::i;:::-;3460:103;:::o;7587:233::-;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;7991:234::-;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;10171:762:21:-;10230:13;10246:23;10261:7;10246:14;:23::i;:::-;10230:39;;10280:51;10301:5;10316:1;10320:7;10329:1;10280:20;:51::i;:::-;10441:23;10456:7;10441:14;:23::i;:::-;10433:31;;10509:15;:24;10525:7;10509:24;;;;;;;;;;;;10502:31;;;;;;;;;;;10769:1;10749:9;:16;10759:5;10749:16;;;;;;;;;;;;;;;;:21;;;;;;;;;;;10797:7;:16;10805:7;10797:16;;;;;;;;;;;;10790:23;;;;;;;;;;;10857:7;10853:1;10829:36;;10838:5;10829:36;;;;;;;;;;;;10876:50;10896:5;10911:1;10915:7;10924:1;10876:19;:50::i;:::-;10220:713;10171:762;:::o;6702:115::-;6768:7;6794;:16;6802:7;6794:16;;;;;;;;;;;;;;;;;;;;;6787:23;;6702:115;;;:::o;945:123:31:-;1050:1;1032:7;:14;;;:19;;;;;;;;;;;945:123;:::o;827:112::-;892:7;918;:14;;;911:21;;827:112;;;:::o;7995:108:21:-;8070:26;8080:2;8084:7;8070:26;;;;;;;;;;;;:9;:26::i;:::-;7995:108;;:::o;12879:277::-;12999:8;12990:17;;:5;:17;;;;12982:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13085:8;13047:18;:25;13066:5;13047:25;;;;;;;;;;;;;;;:35;13073:8;13047:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;13130:8;13108:41;;13123:5;13108:41;;;13140:8;13108:41;;;;;;:::i;:::-;;;;;;;;12879:277;;;:::o;6326:267::-;6438:28;6448:4;6454:2;6458:7;6438:9;:28::i;:::-;6484:47;6507:4;6513:2;6517:7;6526:4;6484:22;:47::i;:::-;6476:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;6326:267;;;;:::o;7120:126::-;7185:4;7237:1;7208:31;;:17;7217:7;7208:8;:17::i;:::-;:31;;;;7201:38;;7120:126;;;:::o;1570:300::-;1672:4;1722:25;1707:40;;;:11;:40;;;;:104;;;;1778:33;1763:48;;;:11;:48;;;;1707:104;:156;;;;1827:36;1851:11;1827:23;:36::i;:::-;1707:156;1688:175;;1570:300;;;:::o;1330:302:73:-;1509:1;1493:18;;:4;:18;;;:38;;;;1529:1;1515:16;;:2;:16;;;1493:38;1485:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;1565:61;1592:4;1598:2;1602:12;1616:9;1565:26;:61::i;:::-;1330:302;;;;:::o;16294:115:21:-;;;;;:::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;8324:279:21:-;8418:18;8424:2;8428:7;8418:5;:18::i;:::-;8467:53;8498:1;8502:2;8506:7;8515:4;8467:22;:53::i;:::-;8446:150;;;;;;;;;;;;:::i;:::-;;;;;;;;;8324:279;;;:::o;13925:831::-;14074:4;14094:15;:2;:13;;;:15::i;:::-;14090:660;;;14145:2;14129:36;;;14166:12;:10;:12::i;:::-;14180:4;14186:7;14195:4;14129:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;14125:573;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14384:1;14367:6;:13;:18;14363:321;;;14409:60;;;;;;;;;;:::i;:::-;;;;;;;;14363:321;14636:6;14630:13;14621:6;14617:2;14613:15;14606:38;14125:573;14260:41;;;14250:51;;;:6;:51;;;;14243:58;;;;;14090:660;14735:4;14728:11;;13925:831;;;;;;;:::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;2112:890:24:-;2283:61;2310:4;2316:2;2320:12;2334:9;2283:26;:61::i;:::-;2371:1;2359:9;:13;2355:219;;;2500:63;;;;;;;;;;:::i;:::-;;;;;;;;2355:219;2584:15;2602:12;2584:30;;2645:1;2629:18;;:4;:18;;;2625:183;;;2663:40;2695:7;2663:31;:40::i;:::-;2625:183;;;2732:2;2724:10;;:4;:10;;;2720:88;;2750:47;2783:4;2789:7;2750:32;:47::i;:::-;2720:88;2625:183;2835:1;2821:16;;:2;:16;;;2817:179;;;2853:45;2890:7;2853:36;:45::i;:::-;2817:179;;;2925:4;2919:10;;:2;:10;;;2915:81;;2945:40;2973:2;2977:7;2945:27;:40::i;:::-;2915:81;2817:179;2273:729;2112:890;;;;:::o;2407:149:32:-;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;8925:920:21:-;9018:1;9004:16;;:2;:16;;;;8996:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9076:16;9084:7;9076;:16::i;:::-;9075:17;9067:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9136:48;9165:1;9169:2;9173:7;9182:1;9136:20;:48::i;:::-;9280:16;9288:7;9280;:16::i;:::-;9279:17;9271:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9688:1;9671:9;:13;9681:2;9671:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;9729:2;9710:7;:16;9718:7;9710:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9772:7;9768:2;9747:33;;9764:1;9747:33;;;;;;;;;;;;9791:47;9819:1;9823:2;9827:7;9836:1;9791:19;:47::i;:::-;8925:920;;:::o;1412:320:28:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;829:155:34:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;15472:116:21:-;;;;;:::o;3708:161:24:-;3811:10;:17;;;;3784:15;:24;3800:7;3784:24;;;;;;;;;;;:44;;;;3838:10;3854:7;3838:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3708:161;:::o;4486:970::-;4748:22;4798:1;4773:22;4790:4;4773:16;:22::i;:::-;:26;;;;:::i;:::-;4748:51;;4809:18;4830:17;:26;4848:7;4830:26;;;;;;;;;;;;4809:47;;4974:14;4960:10;:28;4956:323;;5004:19;5026:12;:18;5039:4;5026:18;;;;;;;;;;;;;;;:34;5045:14;5026:34;;;;;;;;;;;;5004:56;;5108:11;5075:12;:18;5088:4;5075:18;;;;;;;;;;;;;;;:30;5094:10;5075:30;;;;;;;;;;;:44;;;;5224:10;5191:17;:30;5209:11;5191:30;;;;;;;;;;;:43;;;;4990:289;4956:323;5372:17;:26;5390:7;5372:26;;;;;;;;;;;5365:33;;;5415:12;:18;5428:4;5415:18;;;;;;;;;;;;;;;:34;5434:14;5415:34;;;;;;;;;;;5408:41;;;4567:889;;4486:970;;:::o;5744:1061::-;5993:22;6038:1;6018:10;:17;;;;:21;;;;:::i;:::-;5993:46;;6049:18;6070:15;:24;6086:7;6070:24;;;;;;;;;;;;6049:45;;6416:19;6438:10;6449:14;6438:26;;;;;;;;:::i;:::-;;;;;;;;;;6416:48;;6500:11;6475:10;6486;6475:22;;;;;;;;:::i;:::-;;;;;;;;;:36;;;;6610:10;6579:15;:28;6595:11;6579:28;;;;;;;;;;;:41;;;;6748:15;:24;6764:7;6748:24;;;;;;;;;;;6741:31;;;6782:10;:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5815:990;;;5744:1061;:::o;3296:217::-;3380:14;3397:20;3414:2;3397:16;:20::i;:::-;3380:37;;3454:7;3427:12;:16;3440:2;3427:16;;;;;;;;;;;;;;;:24;3444:6;3427:24;;;;;;;;;;;:34;;;;3500:6;3471:17;:26;3489:7;3471:26;;;;;;;;;;;:35;;;;3370:143;3296:217;;:::o;7:75:77:-;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:99::-;1570:6;1604:5;1598:12;1588:22;;1518:99;;;:::o;1623:169::-;1707:11;1741:6;1736:3;1729:19;1781:4;1776:3;1772:14;1757:29;;1623:169;;;;:::o;1798:307::-;1866:1;1876:113;1890:6;1887:1;1884:13;1876:113;;;1975:1;1970:3;1966:11;1960:18;1956:1;1951:3;1947:11;1940:39;1912:2;1909:1;1905:10;1900:15;;1876:113;;;2007:6;2004:1;2001:13;1998:101;;;2087:1;2078:6;2073:3;2069:16;2062:27;1998:101;1847:258;1798:307;;;:::o;2111:102::-;2152:6;2203:2;2199:7;2194:2;2187:5;2183:14;2179:28;2169:38;;2111:102;;;:::o;2219:364::-;2307:3;2335:39;2368:5;2335:39;:::i;:::-;2390:71;2454:6;2449:3;2390:71;:::i;:::-;2383:78;;2470:52;2515:6;2510:3;2503:4;2496:5;2492:16;2470:52;:::i;:::-;2547:29;2569:6;2547:29;:::i;:::-;2542:3;2538:39;2531:46;;2311:272;2219:364;;;;:::o;2589:313::-;2702:4;2740:2;2729:9;2725:18;2717:26;;2789:9;2783:4;2779:20;2775:1;2764:9;2760:17;2753:47;2817:78;2890:4;2881:6;2817:78;:::i;:::-;2809:86;;2589:313;;;;:::o;2908:77::-;2945:7;2974:5;2963:16;;2908:77;;;:::o;2991:122::-;3064:24;3082:5;3064:24;:::i;:::-;3057:5;3054:35;3044:63;;3103:1;3100;3093:12;3044:63;2991:122;:::o;3119:139::-;3165:5;3203:6;3190:20;3181:29;;3219:33;3246:5;3219:33;:::i;:::-;3119:139;;;;:::o;3264:329::-;3323:6;3372:2;3360:9;3351:7;3347:23;3343:32;3340:119;;;3378:79;;:::i;:::-;3340:119;3498:1;3523:53;3568:7;3559:6;3548:9;3544:22;3523:53;:::i;:::-;3513:63;;3469:117;3264:329;;;;:::o;3599:126::-;3636:7;3676:42;3669:5;3665:54;3654:65;;3599:126;;;:::o;3731:96::-;3768:7;3797:24;3815:5;3797:24;:::i;:::-;3786:35;;3731:96;;;:::o;3833:118::-;3920:24;3938:5;3920:24;:::i;:::-;3915:3;3908:37;3833:118;;:::o;3957:222::-;4050:4;4088:2;4077:9;4073:18;4065:26;;4101:71;4169:1;4158:9;4154:17;4145:6;4101:71;:::i;:::-;3957:222;;;;:::o;4185:122::-;4258:24;4276:5;4258:24;:::i;:::-;4251:5;4248:35;4238:63;;4297:1;4294;4287:12;4238:63;4185:122;:::o;4313:139::-;4359:5;4397:6;4384:20;4375:29;;4413:33;4440:5;4413:33;:::i;:::-;4313:139;;;;:::o;4458:474::-;4526:6;4534;4583:2;4571:9;4562:7;4558:23;4554:32;4551:119;;;4589:79;;:::i;:::-;4551:119;4709:1;4734:53;4779:7;4770:6;4759:9;4755:22;4734:53;:::i;:::-;4724:63;;4680:117;4836:2;4862:53;4907:7;4898:6;4887:9;4883:22;4862:53;:::i;:::-;4852:63;;4807:118;4458:474;;;;;:::o;4938:118::-;5025:24;5043:5;5025:24;:::i;:::-;5020:3;5013:37;4938:118;;:::o;5062:222::-;5155:4;5193:2;5182:9;5178:18;5170:26;;5206:71;5274:1;5263:9;5259:17;5250:6;5206:71;:::i;:::-;5062:222;;;;:::o;5290:329::-;5349:6;5398:2;5386:9;5377:7;5373:23;5369:32;5366:119;;;5404:79;;:::i;:::-;5366:119;5524:1;5549:53;5594:7;5585:6;5574:9;5570:22;5549:53;:::i;:::-;5539:63;;5495:117;5290:329;;;;:::o;5625:619::-;5702:6;5710;5718;5767:2;5755:9;5746:7;5742:23;5738:32;5735:119;;;5773:79;;:::i;:::-;5735:119;5893:1;5918:53;5963:7;5954:6;5943:9;5939:22;5918:53;:::i;:::-;5908:63;;5864:117;6020:2;6046:53;6091:7;6082:6;6071:9;6067:22;6046:53;:::i;:::-;6036:63;;5991:118;6148:2;6174:53;6219:7;6210:6;6199:9;6195:22;6174:53;:::i;:::-;6164:63;;6119:118;5625:619;;;;;:::o;6250:77::-;6287:7;6316:5;6305:16;;6250:77;;;:::o;6333:122::-;6406:24;6424:5;6406:24;:::i;:::-;6399:5;6396:35;6386:63;;6445:1;6442;6435:12;6386:63;6333:122;:::o;6461:139::-;6507:5;6545:6;6532:20;6523:29;;6561:33;6588:5;6561:33;:::i;:::-;6461:139;;;;:::o;6606:329::-;6665:6;6714:2;6702:9;6693:7;6689:23;6685:32;6682:119;;;6720:79;;:::i;:::-;6682:119;6840:1;6865:53;6910:7;6901:6;6890:9;6886:22;6865:53;:::i;:::-;6855:63;;6811:117;6606:329;;;;:::o;6941:118::-;7028:24;7046:5;7028:24;:::i;:::-;7023:3;7016:37;6941:118;;:::o;7065:222::-;7158:4;7196:2;7185:9;7181:18;7173:26;;7209:71;7277:1;7266:9;7262:17;7253:6;7209:71;:::i;:::-;7065:222;;;;:::o;7293:474::-;7361:6;7369;7418:2;7406:9;7397:7;7393:23;7389:32;7386:119;;;7424:79;;:::i;:::-;7386:119;7544:1;7569:53;7614:7;7605:6;7594:9;7590:22;7569:53;:::i;:::-;7559:63;;7515:117;7671:2;7697:53;7742:7;7733:6;7722:9;7718:22;7697:53;:::i;:::-;7687:63;;7642:118;7293:474;;;;;:::o;7773:116::-;7843:21;7858:5;7843:21;:::i;:::-;7836:5;7833:32;7823:60;;7879:1;7876;7869:12;7823:60;7773:116;:::o;7895:133::-;7938:5;7976:6;7963:20;7954:29;;7992:30;8016:5;7992:30;:::i;:::-;7895:133;;;;:::o;8034:468::-;8099:6;8107;8156:2;8144:9;8135:7;8131:23;8127:32;8124:119;;;8162:79;;:::i;:::-;8124:119;8282:1;8307:53;8352:7;8343:6;8332:9;8328:22;8307:53;:::i;:::-;8297:63;;8253:117;8409:2;8435:50;8477:7;8468:6;8457:9;8453:22;8435:50;:::i;:::-;8425:60;;8380:115;8034:468;;;;;:::o;8508:117::-;8617:1;8614;8607:12;8631:117;8740:1;8737;8730:12;8754:180;8802:77;8799:1;8792:88;8899:4;8896:1;8889:15;8923:4;8920:1;8913:15;8940:281;9023:27;9045:4;9023:27;:::i;:::-;9015:6;9011:40;9153:6;9141:10;9138:22;9117:18;9105:10;9102:34;9099:62;9096:88;;;9164:18;;:::i;:::-;9096:88;9204:10;9200:2;9193:22;8983:238;8940:281;;:::o;9227:129::-;9261:6;9288:20;;:::i;:::-;9278:30;;9317:33;9345:4;9337:6;9317:33;:::i;:::-;9227:129;;;:::o;9362:307::-;9423:4;9513:18;9505:6;9502:30;9499:56;;;9535:18;;:::i;:::-;9499:56;9573:29;9595:6;9573:29;:::i;:::-;9565:37;;9657:4;9651;9647:15;9639:23;;9362:307;;;:::o;9675:154::-;9759:6;9754:3;9749;9736:30;9821:1;9812:6;9807:3;9803:16;9796:27;9675:154;;;:::o;9835:410::-;9912:5;9937:65;9953:48;9994:6;9953:48;:::i;:::-;9937:65;:::i;:::-;9928:74;;10025:6;10018:5;10011:21;10063:4;10056:5;10052:16;10101:3;10092:6;10087:3;10083:16;10080:25;10077:112;;;10108:79;;:::i;:::-;10077:112;10198:41;10232:6;10227:3;10222;10198:41;:::i;:::-;9918:327;9835:410;;;;;:::o;10264:338::-;10319:5;10368:3;10361:4;10353:6;10349:17;10345:27;10335:122;;10376:79;;:::i;:::-;10335:122;10493:6;10480:20;10518:78;10592:3;10584:6;10577:4;10569:6;10565:17;10518:78;:::i;:::-;10509:87;;10325:277;10264:338;;;;:::o;10608:943::-;10703:6;10711;10719;10727;10776:3;10764:9;10755:7;10751:23;10747:33;10744:120;;;10783:79;;:::i;:::-;10744:120;10903:1;10928:53;10973:7;10964:6;10953:9;10949:22;10928:53;:::i;:::-;10918:63;;10874:117;11030:2;11056:53;11101:7;11092:6;11081:9;11077:22;11056:53;:::i;:::-;11046:63;;11001:118;11158:2;11184:53;11229:7;11220:6;11209:9;11205:22;11184:53;:::i;:::-;11174:63;;11129:118;11314:2;11303:9;11299:18;11286:32;11345:18;11337:6;11334:30;11331:117;;;11367:79;;:::i;:::-;11331:117;11472:62;11526:7;11517:6;11506:9;11502:22;11472:62;:::i;:::-;11462:72;;11257:287;10608:943;;;;;;;:::o;11557:474::-;11625:6;11633;11682:2;11670:9;11661:7;11657:23;11653:32;11650:119;;;11688:79;;:::i;:::-;11650:119;11808:1;11833:53;11878:7;11869:6;11858:9;11854:22;11833:53;:::i;:::-;11823:63;;11779:117;11935:2;11961:53;12006:7;11997:6;11986:9;11982:22;11961:53;:::i;:::-;11951:63;;11906:118;11557:474;;;;;:::o;12037:180::-;12085:77;12082:1;12075:88;12182:4;12179:1;12172:15;12206:4;12203:1;12196:15;12223:320;12267:6;12304:1;12298:4;12294:12;12284:22;;12351:1;12345:4;12341:12;12372:18;12362:81;;12428:4;12420:6;12416:17;12406:27;;12362:81;12490:2;12482:6;12479:14;12459:18;12456:38;12453:84;;;12509:18;;:::i;:::-;12453:84;12274:269;12223:320;;;:::o;12549:220::-;12689:34;12685:1;12677:6;12673:14;12666:58;12758:3;12753:2;12745:6;12741:15;12734:28;12549:220;:::o;12775:366::-;12917:3;12938:67;13002:2;12997:3;12938:67;:::i;:::-;12931:74;;13014:93;13103:3;13014:93;:::i;:::-;13132:2;13127:3;13123:12;13116:19;;12775:366;;;:::o;13147:419::-;13313:4;13351:2;13340:9;13336:18;13328:26;;13400:9;13394:4;13390:20;13386:1;13375:9;13371:17;13364:47;13428:131;13554:4;13428:131;:::i;:::-;13420:139;;13147:419;;;:::o;13572:248::-;13712:34;13708:1;13700:6;13696:14;13689:58;13781:31;13776:2;13768:6;13764:15;13757:56;13572:248;:::o;13826:366::-;13968:3;13989:67;14053:2;14048:3;13989:67;:::i;:::-;13982:74;;14065:93;14154:3;14065:93;:::i;:::-;14183:2;14178:3;14174:12;14167:19;;13826:366;;;:::o;14198:419::-;14364:4;14402:2;14391:9;14387:18;14379:26;;14451:9;14445:4;14441:20;14437:1;14426:9;14422:17;14415:47;14479:131;14605:4;14479:131;:::i;:::-;14471:139;;14198:419;;;:::o;14623:232::-;14763:34;14759:1;14751:6;14747:14;14740:58;14832:15;14827:2;14819:6;14815:15;14808:40;14623:232;:::o;14861:366::-;15003:3;15024:67;15088:2;15083:3;15024:67;:::i;:::-;15017:74;;15100:93;15189:3;15100:93;:::i;:::-;15218:2;15213:3;15209:12;15202:19;;14861:366;;;:::o;15233:419::-;15399:4;15437:2;15426:9;15422:18;15414:26;;15486:9;15480:4;15476:20;15472:1;15461:9;15457:17;15450:47;15514:131;15640:4;15514:131;:::i;:::-;15506:139;;15233:419;;;:::o;15658:230::-;15798:34;15794:1;15786:6;15782:14;15775:58;15867:13;15862:2;15854:6;15850:15;15843:38;15658:230;:::o;15894:366::-;16036:3;16057:67;16121:2;16116:3;16057:67;:::i;:::-;16050:74;;16133:93;16222:3;16133:93;:::i;:::-;16251:2;16246:3;16242:12;16235:19;;15894:366;;;:::o;16266:419::-;16432:4;16470:2;16459:9;16455:18;16447:26;;16519:9;16513:4;16509:20;16505:1;16494:9;16490:17;16483:47;16547:131;16673:4;16547:131;:::i;:::-;16539:139;;16266:419;;;:::o;16691:234::-;16831:34;16827:1;16819:6;16815:14;16808:58;16900:17;16895:2;16887:6;16883:15;16876:42;16691:234;:::o;16931:366::-;17073:3;17094:67;17158:2;17153:3;17094:67;:::i;:::-;17087:74;;17170:93;17259:3;17170:93;:::i;:::-;17288:2;17283:3;17279:12;17272:19;;16931:366;;;:::o;17303:419::-;17469:4;17507:2;17496:9;17492:18;17484:26;;17556:9;17550:4;17546:20;17542:1;17531:9;17527:17;17520:47;17584:131;17710:4;17584:131;:::i;:::-;17576:139;;17303:419;;;:::o;17728:182::-;17868:34;17864:1;17856:6;17852:14;17845:58;17728:182;:::o;17916:366::-;18058:3;18079:67;18143:2;18138:3;18079:67;:::i;:::-;18072:74;;18155:93;18244:3;18155:93;:::i;:::-;18273:2;18268:3;18264:12;18257:19;;17916:366;;;:::o;18288:419::-;18454:4;18492:2;18481:9;18477:18;18469:26;;18541:9;18535:4;18531:20;18527:1;18516:9;18512:17;18505:47;18569:131;18695:4;18569:131;:::i;:::-;18561:139;;18288:419;;;:::o;18713:231::-;18853:34;18849:1;18841:6;18837:14;18830:58;18922:14;18917:2;18909:6;18905:15;18898:39;18713:231;:::o;18950:366::-;19092:3;19113:67;19177:2;19172:3;19113:67;:::i;:::-;19106:74;;19189:93;19278:3;19189:93;:::i;:::-;19307:2;19302:3;19298:12;19291:19;;18950:366;;;:::o;19322:419::-;19488:4;19526:2;19515:9;19511:18;19503:26;;19575:9;19569:4;19565:20;19561:1;19550:9;19546:17;19539:47;19603:131;19729:4;19603:131;:::i;:::-;19595:139;;19322:419;;;:::o;19747:180::-;19795:77;19792:1;19785:88;19892:4;19889:1;19882:15;19916:4;19913:1;19906:15;19933:174;20073:26;20069:1;20061:6;20057:14;20050:50;19933:174;:::o;20113:366::-;20255:3;20276:67;20340:2;20335:3;20276:67;:::i;:::-;20269:74;;20352:93;20441:3;20352:93;:::i;:::-;20470:2;20465:3;20461:12;20454:19;;20113:366;;;:::o;20485:419::-;20651:4;20689:2;20678:9;20674:18;20666:26;;20738:9;20732:4;20728:20;20724:1;20713:9;20709:17;20702:47;20766:131;20892:4;20766:131;:::i;:::-;20758:139;;20485:419;;;:::o;20910:177::-;21050:29;21046:1;21038:6;21034:14;21027:53;20910:177;:::o;21093:366::-;21235:3;21256:67;21320:2;21315:3;21256:67;:::i;:::-;21249:74;;21332:93;21421:3;21332:93;:::i;:::-;21450:2;21445:3;21441:12;21434:19;;21093:366;;;:::o;21465:419::-;21631:4;21669:2;21658:9;21654:18;21646:26;;21718:9;21712:4;21708:20;21704:1;21693:9;21689:17;21682:47;21746:131;21872:4;21746:131;:::i;:::-;21738:139;;21465:419;;;:::o;21890:180::-;21938:77;21935:1;21928:88;22035:4;22032:1;22025:15;22059:4;22056:1;22049:15;22076:305;22116:3;22135:20;22153:1;22135:20;:::i;:::-;22130:25;;22169:20;22187:1;22169:20;:::i;:::-;22164:25;;22323:1;22255:66;22251:74;22248:1;22245:81;22242:107;;;22329:18;;:::i;:::-;22242:107;22373:1;22370;22366:9;22359:16;;22076:305;;;;:::o;22387:173::-;22527:25;22523:1;22515:6;22511:14;22504:49;22387:173;:::o;22566:366::-;22708:3;22729:67;22793:2;22788:3;22729:67;:::i;:::-;22722:74;;22805:93;22894:3;22805:93;:::i;:::-;22923:2;22918:3;22914:12;22907:19;;22566:366;;;:::o;22938:419::-;23104:4;23142:2;23131:9;23127:18;23119:26;;23191:9;23185:4;23181:20;23177:1;23166:9;23162:17;23155:47;23219:131;23345:4;23219:131;:::i;:::-;23211:139;;22938:419;;;:::o;23363:228::-;23503:34;23499:1;23491:6;23487:14;23480:58;23572:11;23567:2;23559:6;23555:15;23548:36;23363:228;:::o;23597:366::-;23739:3;23760:67;23824:2;23819:3;23760:67;:::i;:::-;23753:74;;23836:93;23925:3;23836:93;:::i;:::-;23954:2;23949:3;23945:12;23938:19;;23597:366;;;:::o;23969:419::-;24135:4;24173:2;24162:9;24158:18;24150:26;;24222:9;24216:4;24212:20;24208:1;24197:9;24193:17;24186:47;24250:131;24376:4;24250:131;:::i;:::-;24242:139;;23969:419;;;:::o;24394:181::-;24534:33;24530:1;24522:6;24518:14;24511:57;24394:181;:::o;24581:366::-;24723:3;24744:67;24808:2;24803:3;24744:67;:::i;:::-;24737:74;;24820:93;24909:3;24820:93;:::i;:::-;24938:2;24933:3;24929:12;24922:19;;24581:366;;;:::o;24953:419::-;25119:4;25157:2;25146:9;25142:18;25134:26;;25206:9;25200:4;25196:20;25192:1;25181:9;25177:17;25170:47;25234:131;25360:4;25234:131;:::i;:::-;25226:139;;24953:419;;;:::o;25378:332::-;25499:4;25537:2;25526:9;25522:18;25514:26;;25550:71;25618:1;25607:9;25603:17;25594:6;25550:71;:::i;:::-;25631:72;25699:2;25688:9;25684:18;25675:6;25631:72;:::i;:::-;25378:332;;;;;:::o;25716:308::-;25778:4;25868:18;25860:6;25857:30;25854:56;;;25890:18;;:::i;:::-;25854:56;25928:29;25950:6;25928:29;:::i;:::-;25920:37;;26012:4;26006;26002:15;25994:23;;25716:308;;;:::o;26030:421::-;26119:5;26144:66;26160:49;26202:6;26160:49;:::i;:::-;26144:66;:::i;:::-;26135:75;;26233:6;26226:5;26219:21;26271:4;26264:5;26260:16;26309:3;26300:6;26295:3;26291:16;26288:25;26285:112;;;26316:79;;:::i;:::-;26285:112;26406:39;26438:6;26433:3;26428;26406:39;:::i;:::-;26125:326;26030:421;;;;;:::o;26471:355::-;26538:5;26587:3;26580:4;26572:6;26568:17;26564:27;26554:122;;26595:79;;:::i;:::-;26554:122;26705:6;26699:13;26730:90;26816:3;26808:6;26801:4;26793:6;26789:17;26730:90;:::i;:::-;26721:99;;26544:282;26471:355;;;;:::o;26832:524::-;26912:6;26961:2;26949:9;26940:7;26936:23;26932:32;26929:119;;;26967:79;;:::i;:::-;26929:119;27108:1;27097:9;27093:17;27087:24;27138:18;27130:6;27127:30;27124:117;;;27160:79;;:::i;:::-;27124:117;27265:74;27331:7;27322:6;27311:9;27307:22;27265:74;:::i;:::-;27255:84;;27058:291;26832:524;;;;:::o;27362:224::-;27502:34;27498:1;27490:6;27486:14;27479:58;27571:7;27566:2;27558:6;27554:15;27547:32;27362:224;:::o;27592:366::-;27734:3;27755:67;27819:2;27814:3;27755:67;:::i;:::-;27748:74;;27831:93;27920:3;27831:93;:::i;:::-;27949:2;27944:3;27940:12;27933:19;;27592:366;;;:::o;27964:419::-;28130:4;28168:2;28157:9;28153:18;28145:26;;28217:9;28211:4;28207:20;28203:1;28192:9;28188:17;28181:47;28245:131;28371:4;28245:131;:::i;:::-;28237:139;;27964:419;;;:::o;28389:223::-;28529:34;28525:1;28517:6;28513:14;28506:58;28598:6;28593:2;28585:6;28581:15;28574:31;28389:223;:::o;28618:366::-;28760:3;28781:67;28845:2;28840:3;28781:67;:::i;:::-;28774:74;;28857:93;28946:3;28857:93;:::i;:::-;28975:2;28970:3;28966:12;28959:19;;28618:366;;;:::o;28990:419::-;29156:4;29194:2;29183:9;29179:18;29171:26;;29243:9;29237:4;29233:20;29229:1;29218:9;29214:17;29207:47;29271:131;29397:4;29271:131;:::i;:::-;29263:139;;28990:419;;;:::o;29415:175::-;29555:27;29551:1;29543:6;29539:14;29532:51;29415:175;:::o;29596:366::-;29738:3;29759:67;29823:2;29818:3;29759:67;:::i;:::-;29752:74;;29835:93;29924:3;29835:93;:::i;:::-;29953:2;29948:3;29944:12;29937:19;;29596:366;;;:::o;29968:419::-;30134:4;30172:2;30161:9;30157:18;30149:26;;30221:9;30215:4;30211:20;30207:1;30196:9;30192:17;30185:47;30249:131;30375:4;30249:131;:::i;:::-;30241:139;;29968:419;;;:::o;30393:237::-;30533:34;30529:1;30521:6;30517:14;30510:58;30602:20;30597:2;30589:6;30585:15;30578:45;30393:237;:::o;30636:366::-;30778:3;30799:67;30863:2;30858:3;30799:67;:::i;:::-;30792:74;;30875:93;30964:3;30875:93;:::i;:::-;30993:2;30988:3;30984:12;30977:19;;30636:366;;;:::o;31008:419::-;31174:4;31212:2;31201:9;31197:18;31189:26;;31261:9;31255:4;31251:20;31247:1;31236:9;31232:17;31225:47;31289:131;31415:4;31289:131;:::i;:::-;31281:139;;31008:419;;;:::o;31433:172::-;31573:24;31569:1;31561:6;31557:14;31550:48;31433:172;:::o;31611:366::-;31753:3;31774:67;31838:2;31833:3;31774:67;:::i;:::-;31767:74;;31850:93;31939:3;31850:93;:::i;:::-;31968:2;31963:3;31959:12;31952:19;;31611:366;;;:::o;31983:419::-;32149:4;32187:2;32176:9;32172:18;32164:26;;32236:9;32230:4;32226:20;32222:1;32211:9;32207:17;32200:47;32264:131;32390:4;32264:131;:::i;:::-;32256:139;;31983:419;;;:::o;32408:148::-;32510:11;32547:3;32532:18;;32408:148;;;;:::o;32562:173::-;32702:25;32698:1;32690:6;32686:14;32679:49;32562:173;:::o;32741:402::-;32901:3;32922:85;33004:2;32999:3;32922:85;:::i;:::-;32915:92;;33016:93;33105:3;33016:93;:::i;:::-;33134:2;33129:3;33125:12;33118:19;;32741:402;;;:::o;33149:377::-;33255:3;33283:39;33316:5;33283:39;:::i;:::-;33338:89;33420:6;33415:3;33338:89;:::i;:::-;33331:96;;33436:52;33481:6;33476:3;33469:4;33462:5;33458:16;33436:52;:::i;:::-;33513:6;33508:3;33504:16;33497:23;;33259:267;33149:377;;;;:::o;33532:167::-;33672:19;33668:1;33660:6;33656:14;33649:43;33532:167;:::o;33705:402::-;33865:3;33886:85;33968:2;33963:3;33886:85;:::i;:::-;33879:92;;33980:93;34069:3;33980:93;:::i;:::-;34098:2;34093:3;34089:12;34082:19;;33705:402;;;:::o;34113:967::-;34495:3;34517:148;34661:3;34517:148;:::i;:::-;34510:155;;34682:95;34773:3;34764:6;34682:95;:::i;:::-;34675:102;;34794:148;34938:3;34794:148;:::i;:::-;34787:155;;34959:95;35050:3;35041:6;34959:95;:::i;:::-;34952:102;;35071:3;35064:10;;34113:967;;;;;:::o;35086:98::-;35137:6;35171:5;35165:12;35155:22;;35086:98;;;:::o;35190:168::-;35273:11;35307:6;35302:3;35295:19;35347:4;35342:3;35338:14;35323:29;;35190:168;;;;:::o;35364:360::-;35450:3;35478:38;35510:5;35478:38;:::i;:::-;35532:70;35595:6;35590:3;35532:70;:::i;:::-;35525:77;;35611:52;35656:6;35651:3;35644:4;35637:5;35633:16;35611:52;:::i;:::-;35688:29;35710:6;35688:29;:::i;:::-;35683:3;35679:39;35672:46;;35454:270;35364:360;;;;:::o;35730:640::-;35925:4;35963:3;35952:9;35948:19;35940:27;;35977:71;36045:1;36034:9;36030:17;36021:6;35977:71;:::i;:::-;36058:72;36126:2;36115:9;36111:18;36102:6;36058:72;:::i;:::-;36140;36208:2;36197:9;36193:18;36184:6;36140:72;:::i;:::-;36259:9;36253:4;36249:20;36244:2;36233:9;36229:18;36222:48;36287:76;36358:4;36349:6;36287:76;:::i;:::-;36279:84;;35730:640;;;;;;;:::o;36376:141::-;36432:5;36463:6;36457:13;36448:22;;36479:32;36505:5;36479:32;:::i;:::-;36376:141;;;;:::o;36523:349::-;36592:6;36641:2;36629:9;36620:7;36616:23;36612:32;36609:119;;;36647:79;;:::i;:::-;36609:119;36767:1;36792:63;36847:7;36838:6;36827:9;36823:22;36792:63;:::i;:::-;36782:73;;36738:127;36523:349;;;;:::o;36878:240::-;37018:34;37014:1;37006:6;37002:14;36995:58;37087:23;37082:2;37074:6;37070:15;37063:48;36878:240;:::o;37124:366::-;37266:3;37287:67;37351:2;37346:3;37287:67;:::i;:::-;37280:74;;37363:93;37452:3;37363:93;:::i;:::-;37481:2;37476:3;37472:12;37465:19;;37124:366;;;:::o;37496:419::-;37662:4;37700:2;37689:9;37685:18;37677:26;;37749:9;37743:4;37739:20;37735:1;37724:9;37720:17;37713:47;37777:131;37903:4;37777:131;:::i;:::-;37769:139;;37496:419;;;:::o;37921:348::-;37961:7;37984:20;38002:1;37984:20;:::i;:::-;37979:25;;38018:20;38036:1;38018:20;:::i;:::-;38013:25;;38206:1;38138:66;38134:74;38131:1;38128:81;38123:1;38116:9;38109:17;38105:105;38102:131;;;38213:18;;:::i;:::-;38102:131;38261:1;38258;38254:9;38243:20;;37921:348;;;;:::o;38275:171::-;38314:3;38337:24;38355:5;38337:24;:::i;:::-;38328:33;;38383:4;38376:5;38373:15;38370:41;;;38391:18;;:::i;:::-;38370:41;38438:1;38431:5;38427:13;38420:20;;38275:171;;;:::o;38452:182::-;38592:34;38588:1;38580:6;38576:14;38569:58;38452:182;:::o;38640:366::-;38782:3;38803:67;38867:2;38862:3;38803:67;:::i;:::-;38796:74;;38879:93;38968:3;38879:93;:::i;:::-;38997:2;38992:3;38988:12;38981:19;;38640:366;;;:::o;39012:419::-;39178:4;39216:2;39205:9;39201:18;39193:26;;39265:9;39259:4;39255:20;39251:1;39240:9;39236:17;39229:47;39293:131;39419:4;39293:131;:::i;:::-;39285:139;;39012:419;;;:::o;39437:182::-;39577:34;39573:1;39565:6;39561:14;39554:58;39437:182;:::o;39625:366::-;39767:3;39788:67;39852:2;39847:3;39788:67;:::i;:::-;39781:74;;39864:93;39953:3;39864:93;:::i;:::-;39982:2;39977:3;39973:12;39966:19;;39625:366;;;:::o;39997:419::-;40163:4;40201:2;40190:9;40186:18;40178:26;;40250:9;40244:4;40240:20;40236:1;40225:9;40221:17;40214:47;40278:131;40404:4;40278:131;:::i;:::-;40270:139;;39997:419;;;:::o;40422:178::-;40562:30;40558:1;40550:6;40546:14;40539:54;40422:178;:::o;40606:366::-;40748:3;40769:67;40833:2;40828:3;40769:67;:::i;:::-;40762:74;;40845:93;40934:3;40845:93;:::i;:::-;40963:2;40958:3;40954:12;40947:19;;40606:366;;;:::o;40978:419::-;41144:4;41182:2;41171:9;41167:18;41159:26;;41231:9;41225:4;41221:20;41217:1;41206:9;41202:17;41195:47;41259:131;41385:4;41259:131;:::i;:::-;41251:139;;40978:419;;;:::o;41403:191::-;41443:4;41463:20;41481:1;41463:20;:::i;:::-;41458:25;;41497:20;41515:1;41497:20;:::i;:::-;41492:25;;41536:1;41533;41530:8;41527:34;;;41541:18;;:::i;:::-;41527:34;41586:1;41583;41579:9;41571:17;;41403:191;;;;:::o;41600:180::-;41648:77;41645:1;41638:88;41745:4;41742:1;41735:15;41769:4;41766:1;41759:15", - "source": "// SPDX-License-Identifier: MIT\r\npragma solidity 0.8.10;\r\n\r\nimport \"@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol\";\r\nimport \"@openzeppelin/contracts/utils/Counters.sol\";\r\nimport \"@openzeppelin/contracts/access/AccessControl.sol\";\r\nimport \"../../interfaces/IMetaData.sol\";\r\n\r\ncontract NFTSbt is AccessControl, ERC721Enumerable {\r\n using Counters for Counters.Counter;\r\n address private _metaAddress;\r\n bytes32 public constant BURN_ROLE = keccak256(\"BURN_ROLE\");\r\n bytes32 public constant MINTER_ROLE = keccak256(\"MINTER_ROLE\");\r\n uint256 public immutable supplyLimit;\r\n\r\n Counters.Counter private _tokenIdCounter;\r\n\r\n constructor(\r\n string memory _name,\r\n string memory _symbol,\r\n uint256 _supplyLimt\r\n ) ERC721(_name, _symbol) {\r\n supplyLimit = _supplyLimt;\r\n _setRoleAdmin(BURN_ROLE, DEFAULT_ADMIN_ROLE);\r\n _setRoleAdmin(MINTER_ROLE, DEFAULT_ADMIN_ROLE);\r\n\r\n _setupRole(DEFAULT_ADMIN_ROLE, msg.sender);\r\n _setupRole(MINTER_ROLE, msg.sender);\r\n _setupRole(BURN_ROLE, msg.sender);\r\n }\r\n\r\n /**\r\n * @dev See {IERC165-supportsInterface}.\r\n */\r\n function supportsInterface(\r\n bytes4 interfaceId\r\n )\r\n public\r\n view\r\n virtual\r\n override(AccessControl, ERC721Enumerable)\r\n returns (bool)\r\n {\r\n return super.supportsInterface(interfaceId);\r\n }\r\n\r\n function _beforeTokenTransfer(\r\n address from,\r\n address to,\r\n uint256 firstTokenId,\r\n uint256 batchSize\r\n ) internal virtual override {\r\n require(from == address(0) || to == address(0), \"Token not transferable\");\r\n super._beforeTokenTransfer(from, to, firstTokenId, batchSize);\r\n }\r\n\r\n /**\r\n * @dev Set token URI\r\n */\r\n function updateMetaAddress(\r\n address metaAddress\r\n ) external onlyRole(DEFAULT_ADMIN_ROLE) {\r\n _metaAddress = metaAddress;\r\n }\r\n\r\n /**\r\n * @dev one type badge has same tokenURI\r\n */\r\n function tokenURI(\r\n uint256 tokenId\r\n ) public view override returns (string memory) {\r\n require(_exists(tokenId), \"URI query for nonexistent token\");\r\n return IMetaData(_metaAddress).getMetaData(address(this), tokenId);\r\n }\r\n\r\n function mint(address to) external onlyRole(MINTER_ROLE) returns (uint256) {\r\n require(to != address(0), \"Cannot mint to zero address\");\r\n if (supplyLimit > 0) {\r\n require((totalSupply() + 1) <= supplyLimit, \"Exceed the total supply\");\r\n }\r\n _tokenIdCounter.increment();\r\n uint256 tokenId = _tokenIdCounter.current();\r\n _safeMint(to, tokenId);\r\n return tokenId;\r\n }\r\n\r\n function burn(uint256 tokenId) external onlyRole(BURN_ROLE) {\r\n require(\r\n _isApprovedOrOwner(_msgSender(), tokenId),\r\n \"Caller is not owner nor approved\"\r\n );\r\n _burn(tokenId);\r\n }\r\n\r\n /**\r\n * @dev Grant mint role to address\r\n */\r\n function setMintRole(address to) external {\r\n grantRole(MINTER_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Remove mint role to address\r\n */\r\n function removeMintRole(address to) external {\r\n revokeRole(MINTER_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Grant burn role to address\r\n */\r\n function setBurnRole(address to) external {\r\n grantRole(BURN_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Remove burn role to address\r\n */\r\n function removeBurnRole(address to) external {\r\n revokeRole(BURN_ROLE, to);\r\n }\r\n}\r\n", - "sourcePath": "D:\\res\\CEBG\\becrypto\\contracts\\tokens\\erc721\\NFTSbt.sol", + "sourceMap": "298:3681:17:-:0;;;677:3;647:33;;687:395;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;791:5;798:7;1464:5:2;1456;:13;;;;;;;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;;;;;;;:::i;:::-;;1390:113;;828:11:17::1;814:25;;;;::::0;::::1;846:44;463:22;2198:4:0;871:18:17::0;::::1;846:13;;;:44;;:::i;:::-;897:46;528:24;2198:4:0;924:18:17::0;::::1;897:13;;;:46;;:::i;:::-;952:42;2198:4:0;963:18:17::0;::::1;983:10;952;;;:42;;:::i;:::-;1001:35;528:24;1025:10;1001;;;:35;;:::i;:::-;1043:33;463:22;1065:10;1043;;;:33;;:::i;:::-;687:395:::0;;;298:3681;;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;6937:110::-;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;7587:233::-;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;3021:145::-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;640:96:9:-;693:7;719:10;712:17;;640:96;:::o;298:3681:17:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:18:-;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:117;443:1;440;433:12;457:117;566:1;563;556:12;580:102;621:6;672:2;668:7;663:2;656:5;652:14;648:28;638:38;;580:102;;;:::o;688:180::-;736:77;733:1;726:88;833:4;830:1;823:15;857:4;854:1;847:15;874:281;957:27;979:4;957:27;:::i;:::-;949:6;945:40;1087:6;1075:10;1072:22;1051:18;1039:10;1036:34;1033:62;1030:88;;;1098:18;;:::i;:::-;1030:88;1138:10;1134:2;1127:22;917:238;874:281;;:::o;1161:129::-;1195:6;1222:20;;:::i;:::-;1212:30;;1251:33;1279:4;1271:6;1251:33;:::i;:::-;1161:129;;;:::o;1296:308::-;1358:4;1448:18;1440:6;1437:30;1434:56;;;1470:18;;:::i;:::-;1434:56;1508:29;1530:6;1508:29;:::i;:::-;1500:37;;1592:4;1586;1582:15;1574:23;;1296:308;;;:::o;1610:307::-;1678:1;1688:113;1702:6;1699:1;1696:13;1688:113;;;1787:1;1782:3;1778:11;1772:18;1768:1;1763:3;1759:11;1752:39;1724:2;1721:1;1717:10;1712:15;;1688:113;;;1819:6;1816:1;1813:13;1810:101;;;1899:1;1890:6;1885:3;1881:16;1874:27;1810:101;1659:258;1610:307;;;:::o;1923:421::-;2012:5;2037:66;2053:49;2095:6;2053:49;:::i;:::-;2037:66;:::i;:::-;2028:75;;2126:6;2119:5;2112:21;2164:4;2157:5;2153:16;2202:3;2193:6;2188:3;2184:16;2181:25;2178:112;;;2209:79;;:::i;:::-;2178:112;2299:39;2331:6;2326:3;2321;2299:39;:::i;:::-;2018:326;1923:421;;;;;:::o;2364:355::-;2431:5;2480:3;2473:4;2465:6;2461:17;2457:27;2447:122;;2488:79;;:::i;:::-;2447:122;2598:6;2592:13;2623:90;2709:3;2701:6;2694:4;2686:6;2682:17;2623:90;:::i;:::-;2614:99;;2437:282;2364:355;;;;:::o;2725:77::-;2762:7;2791:5;2780:16;;2725:77;;;:::o;2808:122::-;2881:24;2899:5;2881:24;:::i;:::-;2874:5;2871:35;2861:63;;2920:1;2917;2910:12;2861:63;2808:122;:::o;2936:143::-;2993:5;3024:6;3018:13;3009:22;;3040:33;3067:5;3040:33;:::i;:::-;2936:143;;;;:::o;3085:1009::-;3193:6;3201;3209;3258:2;3246:9;3237:7;3233:23;3229:32;3226:119;;;3264:79;;:::i;:::-;3226:119;3405:1;3394:9;3390:17;3384:24;3435:18;3427:6;3424:30;3421:117;;;3457:79;;:::i;:::-;3421:117;3562:74;3628:7;3619:6;3608:9;3604:22;3562:74;:::i;:::-;3552:84;;3355:291;3706:2;3695:9;3691:18;3685:25;3737:18;3729:6;3726:30;3723:117;;;3759:79;;:::i;:::-;3723:117;3864:74;3930:7;3921:6;3910:9;3906:22;3864:74;:::i;:::-;3854:84;;3656:292;3987:2;4013:64;4069:7;4060:6;4049:9;4045:22;4013:64;:::i;:::-;4003:74;;3958:129;3085:1009;;;;;:::o;4100:180::-;4148:77;4145:1;4138:88;4245:4;4242:1;4235:15;4269:4;4266:1;4259:15;4286:320;4330:6;4367:1;4361:4;4357:12;4347:22;;4414:1;4408:4;4404:12;4435:18;4425:81;;4491:4;4483:6;4479:17;4469:27;;4425:81;4553:2;4545:6;4542:14;4522:18;4519:38;4516:84;;;4572:18;;:::i;:::-;4516:84;4337:269;4286:320;;;:::o;298:3681:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", + "deployedSourceMap": "298:3681:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1146:218;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:98:2;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3935:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1630:111:5;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;557:36:17;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3612:85;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4612:296:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4504:129:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;647:33:17;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4929:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1306:253:5;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3755:79:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6038:214:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4974:149:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3213:201:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2158:651;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1813:230:5;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3472:81:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2190:219:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2815:392:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:204:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3021:145:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2633:102:2;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3893:83:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2153:49:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4169:153:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1717:135:17;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5189:276:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;427:58:17;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1916:236;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;490:62;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5354:147:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4388:162:2;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1146:218:17;1299:4;1322:36;1346:11;1322:23;:36::i;:::-;1315:43;;1146:218;;;:::o;2471:98:2:-;2525:13;2557:5;2550:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2471:98;:::o;3935:167::-;4011:7;4030:23;4045:7;4030:14;:23::i;:::-;4071:15;:24;4087:7;4071:24;;;;;;;;;;;;;;;;;;;;;4064:31;;3935:167;;;:::o;3468:406::-;3548:13;3564:23;3579:7;3564:14;:23::i;:::-;3548:39;;3611:5;3605:11;;:2;:11;;;;3597:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3702:5;3686:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3711:37;3728:5;3735:12;:10;:12::i;:::-;3711:16;:37::i;:::-;3686:62;3665:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;3846:21;3855:2;3859:7;3846:8;:21::i;:::-;3538:336;3468:406;;:::o;1630:111:5:-;1691:7;1717:10;:17;;;;1710:24;;1630:111;:::o;557:36:17:-;;;:::o;3612:85::-;3664:27;528:24;3688:2;3664:10;:27::i;:::-;3612:85;:::o;4612:296:2:-;4771:41;4790:12;:10;:12::i;:::-;4804:7;4771:18;:41::i;:::-;4763:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;4873:28;4883:4;4889:2;4893:7;4873:9;:28::i;:::-;4612:296;;;:::o;4504:129:0:-;4578:7;4604:6;:12;4611:4;4604:12;;;;;;;;;;;:22;;;4597:29;;4504:129;;;:::o;647:33:17:-;;;;:::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;1306:253:5:-;1403:7;1438:23;1455:5;1438:16;:23::i;:::-;1430:5;:31;1422:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;1526:12;:19;1539:5;1526:19;;;;;;;;;;;;;;;:26;1546:5;1526:26;;;;;;;;;;;;1519:33;;1306:253;;;;:::o;3755:79:17:-;3804:24;463:22;3825:2;3804:9;:24::i;:::-;3755:79;:::o;6038:214:0:-;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;4974:149:2:-;5077:39;5094:4;5100:2;5104:7;5077:39;;;;;;;;;;;;:16;:39::i;:::-;4974:149;;;:::o;3213:201:17:-;463:22;2631:16:0;2642:4;2631:10;:16::i;:::-;3296:41:17::1;3315:12;:10;:12::i;:::-;3329:7;3296:18;:41::i;:::-;3280:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;3394:14;3400:7;3394:5;:14::i;:::-;3213:201:::0;;:::o;2158:651::-;2259:16;528:24;2631:16:0;2642:4;2631:10;:16::i;:::-;2300:1:17::1;2292:5;:9;2284:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;2348:12;;2339:5;:21;;2331:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;2407:1;2393:11;:15;2389:139;;;2464:11;2454:5;2438:13;:11;:13::i;:::-;:21;;;;:::i;:::-;2437:38;;2419:101;;;;;;;;;;;;:::i;:::-;;;;;;;;;2389:139;2534:25;2576:5;2562:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2534:48;;2594:9;2589:193;2613:5;2609:1;:9;2589:193;;;2634:27;:15;:25;:27::i;:::-;2670:15;2688:25;:15;:23;:25::i;:::-;2670:43;;2722:22;2732:2;2736:7;2722:9;:22::i;:::-;2767:7;2753:8;2762:1;2753:11;;;;;;;;:::i;:::-;;;;;;;:21;;;::::0;::::1;2625:157;2620:3;;;;;:::i;:::-;;;;2589:193;;;;2795:8;2788:15;;;2158:651:::0;;;;;:::o;1813:230:5:-;1888:7;1923:30;:28;:30::i;:::-;1915:5;:38;1907:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;2019:10;2030:5;2019:17;;;;;;;;:::i;:::-;;;;;;;;;;2012:24;;1813:230;;;:::o;3472:81:17:-;3521:26;528:24;3544:2;3521:9;:26::i;:::-;3472:81;:::o;2190:219:2:-;2262:7;2281:13;2297:17;2306:7;2297:8;:17::i;:::-;2281:33;;2349:1;2332:19;;:5;:19;;;;2324:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2397:5;2390:12;;;2190:219;;;:::o;2815:392:17:-;2881:7;528:24;2631:16:0;2642:4;2631:10;:16::i;:::-;2919:1:17::1;2905:16;;:2;:16;;;;2897:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2978:1;2964:11;:15;2960:108;;;3021:11;3015:1;2999:13;:11;:13::i;:::-;:17;;;;:::i;:::-;2998:34;;2990:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;2960:108;3074:27;:15;:25;:27::i;:::-;3108:15;3126:25;:15;:23;:25::i;:::-;3108:43;;3158:22;3168:2;3172:7;3158:9;:22::i;:::-;3194:7;3187:14;;;2815:392:::0;;;;:::o;1929:204:2:-;2001:7;2045:1;2028:19;;:5;:19;;;;2020:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2110:9;:16;2120:5;2110:16;;;;;;;;;;;;;;;;2103:23;;1929:204;;;:::o;3021:145:0:-;3107:4;3130:6;:12;3137:4;3130:12;;;;;;;;;;;:20;;:29;3151:7;3130:29;;;;;;;;;;;;;;;;;;;;;;;;;3123:36;;3021:145;;;;:::o;2633:102:2:-;2689:13;2721:7;2714:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2633:102;:::o;3893:83:17:-;3945:25;463:22;3967:2;3945:10;:25::i;:::-;3893:83;:::o;2153:49:0:-;2198:4;2153:49;;;:::o;4169:153:2:-;4263:52;4282:12;:10;:12::i;:::-;4296:8;4306;4263:18;:52::i;:::-;4169:153;;:::o;1717:135:17:-;2198:4:0;1793:18:17;;2631:16:0;2642:4;2631:10;:16::i;:::-;1835:11:17::1;1820:12;;:26;;;;;;;;;;;;;;;;;;1717:135:::0;;:::o;5189:276:2:-;5319:41;5338:12;:10;:12::i;:::-;5352:7;5319:18;:41::i;:::-;5311:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;5420:38;5434:4;5440:2;5444:7;5453:4;5420:13;:38::i;:::-;5189:276;;;;:::o;427:58:17:-;463:22;427:58;:::o;1916:236::-;1991:13;2021:16;2029:7;2021;:16::i;:::-;2013:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;2097:12;;;;;;;;;;;2087:35;;;2131:4;2138:7;2087:59;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2080:66;;1916:236;;;:::o;490:62::-;528:24;490:62;:::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;4388:162:2:-;4485:4;4508:18;:25;4527:5;4508:25;;;;;;;;;;;;;;;:35;4534:8;4508:35;;;;;;;;;;;;;;;;;;;;;;;;;4501:42;;4388:162;;;;:::o;1005:222:5:-;1107:4;1145:35;1130:50;;;:11;:50;;;;:90;;;;1184:36;1208:11;1184:23;:36::i;:::-;1130:90;1123:97;;1005:222;;;:::o;13240:133:2:-;13321:16;13329:7;13321;:16::i;:::-;13313:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;13240:133;:::o;640:96:9:-;693:7;719:10;712:17;;640:96;:::o;12572:171:2:-;12673:2;12646:15;:24;12662:7;12646:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;12728:7;12724:2;12690:46;;12699:23;12714:7;12699:14;:23::i;:::-;12690:46;;;;;;;;;;;;12572:171;;:::o;7404:261::-;7497:4;7513:13;7529:23;7544:7;7529:14;:23::i;:::-;7513:39;;7581:5;7570:16;;:7;:16;;;:52;;;;7590:32;7607:5;7614:7;7590:16;:32::i;:::-;7570:52;:87;;;;7650:7;7626:31;;:20;7638:7;7626:11;:20::i;:::-;:31;;;7570:87;7562:96;;;7404:261;;;;:::o;11257:1203::-;11381:4;11354:31;;:23;11369:7;11354:14;:23::i;:::-;:31;;;11346:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11459:1;11445:16;;:2;:16;;;;11437:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;11513:42;11534:4;11540:2;11544:7;11553:1;11513:20;:42::i;:::-;11682:4;11655:31;;:23;11670:7;11655:14;:23::i;:::-;:31;;;11647:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;11797:15;:24;11813:7;11797:24;;;;;;;;;;;;11790:31;;;;;;;;;;;12284:1;12265:9;:15;12275:4;12265:15;;;;;;;;;;;;;;;;:20;;;;;;;;;;;12316:1;12299:9;:13;12309:2;12299:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;12356:2;12337:7;:16;12345:7;12337:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;12393:7;12389:2;12374:27;;12383:4;12374:27;;;;;;;;;;;;12412:41;12432:4;12438:2;12442:7;12451:1;12412:19;:41::i;:::-;11257:1203;;;:::o;3460:103:0:-;3526:30;3537:4;3543:12;:10;:12::i;:::-;3526:10;:30::i;:::-;3460:103;:::o;7587:233::-;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;7991:234::-;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;10171:762:2:-;10230:13;10246:23;10261:7;10246:14;:23::i;:::-;10230:39;;10280:51;10301:5;10316:1;10320:7;10329:1;10280:20;:51::i;:::-;10441:23;10456:7;10441:14;:23::i;:::-;10433:31;;10509:15;:24;10525:7;10509:24;;;;;;;;;;;;10502:31;;;;;;;;;;;10769:1;10749:9;:16;10759:5;10749:16;;;;;;;;;;;;;;;;:21;;;;;;;;;;;10797:7;:16;10805:7;10797:16;;;;;;;;;;;;10790:23;;;;;;;;;;;10857:7;10853:1;10829:36;;10838:5;10829:36;;;;;;;;;;;;10876:50;10896:5;10911:1;10915:7;10924:1;10876:19;:50::i;:::-;10220:713;10171:762;:::o;945:123:10:-;1050:1;1032:7;:14;;;:19;;;;;;;;;;;945:123;:::o;827:112::-;892:7;918;:14;;;911:21;;827:112;;;:::o;7995:108:2:-;8070:26;8080:2;8084:7;8070:26;;;;;;;;;;;;:9;:26::i;:::-;7995:108;;:::o;6702:115::-;6768:7;6794;:16;6802:7;6794:16;;;;;;;;;;;;;;;;;;;;;6787:23;;6702:115;;;:::o;12879:277::-;12999:8;12990:17;;:5;:17;;;;12982:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;13085:8;13047:18;:25;13066:5;13047:25;;;;;;;;;;;;;;;:35;13073:8;13047:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;13130:8;13108:41;;13123:5;13108:41;;;13140:8;13108:41;;;;;;:::i;:::-;;;;;;;;12879:277;;;:::o;6326:267::-;6438:28;6448:4;6454:2;6458:7;6438:9;:28::i;:::-;6484:47;6507:4;6513:2;6517:7;6526:4;6484:22;:47::i;:::-;6476:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;6326:267;;;;:::o;7120:126::-;7185:4;7237:1;7208:31;;:17;7217:7;7208:8;:17::i;:::-;:31;;;;7201:38;;7120:126;;;:::o;1570:300::-;1672:4;1722:25;1707:40;;;:11;:40;;;;:104;;;;1778:33;1763:48;;;:11;:48;;;;1707:104;:156;;;;1827:36;1851:11;1827:23;:36::i;:::-;1707:156;1688:175;;1570:300;;;:::o;1370:302:17:-;1549:1;1533:18;;:4;:18;;;:38;;;;1569:1;1555:16;;:2;:16;;;1533:38;1525:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;1605:61;1632:4;1638:2;1642:12;1656:9;1605:26;:61::i;:::-;1370:302;;;;:::o;16294:115:2:-;;;;;:::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;8324:279:2:-;8418:18;8424:2;8428:7;8418:5;:18::i;:::-;8467:53;8498:1;8502:2;8506:7;8515:4;8467:22;:53::i;:::-;8446:150;;;;;;;;;;;;:::i;:::-;;;;;;;;;8324:279;;;:::o;13925:831::-;14074:4;14094:15;:2;:13;;;:15::i;:::-;14090:660;;;14145:2;14129:36;;;14166:12;:10;:12::i;:::-;14180:4;14186:7;14195:4;14129:71;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;14125:573;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14384:1;14367:6;:13;:18;14363:321;;;14409:60;;;;;;;;;;:::i;:::-;;;;;;;;14363:321;14636:6;14630:13;14621:6;14617:2;14613:15;14606:38;14125:573;14260:41;;;14250:51;;;:6;:51;;;;14243:58;;;;;14090:660;14735:4;14728:11;;13925:831;;;;;;;:::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;2112:890:5:-;2283:61;2310:4;2316:2;2320:12;2334:9;2283:26;:61::i;:::-;2371:1;2359:9;:13;2355:219;;;2500:63;;;;;;;;;;:::i;:::-;;;;;;;;2355:219;2584:15;2602:12;2584:30;;2645:1;2629:18;;:4;:18;;;2625:183;;;2663:40;2695:7;2663:31;:40::i;:::-;2625:183;;;2732:2;2724:10;;:4;:10;;;2720:88;;2750:47;2783:4;2789:7;2750:32;:47::i;:::-;2720:88;2625:183;2835:1;2821:16;;:2;:16;;;2817:179;;;2853:45;2890:7;2853:36;:45::i;:::-;2817:179;;;2925:4;2919:10;;:2;:10;;;2915:81;;2945:40;2973:2;2977:7;2945:27;:40::i;:::-;2915:81;2817:179;2273:729;2112:890;;;;:::o;2407:149:11:-;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;8925:920:2:-;9018:1;9004:16;;:2;:16;;;;8996:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9076:16;9084:7;9076;:16::i;:::-;9075:17;9067:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9136:48;9165:1;9169:2;9173:7;9182:1;9136:20;:48::i;:::-;9280:16;9288:7;9280;:16::i;:::-;9279:17;9271:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9688:1;9671:9;:13;9681:2;9671:13;;;;;;;;;;;;;;;;:18;;;;;;;;;;;9729:2;9710:7;:16;9718:7;9710:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9772:7;9768:2;9747:33;;9764:1;9747:33;;;;;;;;;;;;9791:47;9819:1;9823:2;9827:7;9836:1;9791:19;:47::i;:::-;8925:920;;:::o;1412:320:8:-;1472:4;1724:1;1702:7;:19;;;:23;1695:30;;1412:320;;;:::o;829:155:12:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;15472:116:2:-;;;;;:::o;3708:161:5:-;3811:10;:17;;;;3784:15;:24;3800:7;3784:24;;;;;;;;;;;:44;;;;3838:10;3854:7;3838:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3708:161;:::o;4486:970::-;4748:22;4798:1;4773:22;4790:4;4773:16;:22::i;:::-;:26;;;;:::i;:::-;4748:51;;4809:18;4830:17;:26;4848:7;4830:26;;;;;;;;;;;;4809:47;;4974:14;4960:10;:28;4956:323;;5004:19;5026:12;:18;5039:4;5026:18;;;;;;;;;;;;;;;:34;5045:14;5026:34;;;;;;;;;;;;5004:56;;5108:11;5075:12;:18;5088:4;5075:18;;;;;;;;;;;;;;;:30;5094:10;5075:30;;;;;;;;;;;:44;;;;5224:10;5191:17;:30;5209:11;5191:30;;;;;;;;;;;:43;;;;4990:289;4956:323;5372:17;:26;5390:7;5372:26;;;;;;;;;;;5365:33;;;5415:12;:18;5428:4;5415:18;;;;;;;;;;;;;;;:34;5434:14;5415:34;;;;;;;;;;;5408:41;;;4567:889;;4486:970;;:::o;5744:1061::-;5993:22;6038:1;6018:10;:17;;;;:21;;;;:::i;:::-;5993:46;;6049:18;6070:15;:24;6086:7;6070:24;;;;;;;;;;;;6049:45;;6416:19;6438:10;6449:14;6438:26;;;;;;;;:::i;:::-;;;;;;;;;;6416:48;;6500:11;6475:10;6486;6475:22;;;;;;;;:::i;:::-;;;;;;;;;:36;;;;6610:10;6579:15;:28;6595:11;6579:28;;;;;;;;;;;:41;;;;6748:15;:24;6764:7;6748:24;;;;;;;;;;;6741:31;;;6782:10;:16;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5815:990;;;5744:1061;:::o;3296:217::-;3380:14;3397:20;3414:2;3397:16;:20::i;:::-;3380:37;;3454:7;3427:12;:16;3440:2;3427:16;;;;;;;;;;;;;;;:24;3444:6;3427:24;;;;;;;;;;;:34;;;;3500:6;3471:17;:26;3489:7;3471:26;;;;;;;;;;;:35;;;;3370:143;3296:217;;:::o;7:75:18:-;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:99::-;1570:6;1604:5;1598:12;1588:22;;1518:99;;;:::o;1623:169::-;1707:11;1741:6;1736:3;1729:19;1781:4;1776:3;1772:14;1757:29;;1623:169;;;;:::o;1798:307::-;1866:1;1876:113;1890:6;1887:1;1884:13;1876:113;;;1975:1;1970:3;1966:11;1960:18;1956:1;1951:3;1947:11;1940:39;1912:2;1909:1;1905:10;1900:15;;1876:113;;;2007:6;2004:1;2001:13;1998:101;;;2087:1;2078:6;2073:3;2069:16;2062:27;1998:101;1847:258;1798:307;;;:::o;2111:102::-;2152:6;2203:2;2199:7;2194:2;2187:5;2183:14;2179:28;2169:38;;2111:102;;;:::o;2219:364::-;2307:3;2335:39;2368:5;2335:39;:::i;:::-;2390:71;2454:6;2449:3;2390:71;:::i;:::-;2383:78;;2470:52;2515:6;2510:3;2503:4;2496:5;2492:16;2470:52;:::i;:::-;2547:29;2569:6;2547:29;:::i;:::-;2542:3;2538:39;2531:46;;2311:272;2219:364;;;;:::o;2589:313::-;2702:4;2740:2;2729:9;2725:18;2717:26;;2789:9;2783:4;2779:20;2775:1;2764:9;2760:17;2753:47;2817:78;2890:4;2881:6;2817:78;:::i;:::-;2809:86;;2589:313;;;;:::o;2908:77::-;2945:7;2974:5;2963:16;;2908:77;;;:::o;2991:122::-;3064:24;3082:5;3064:24;:::i;:::-;3057:5;3054:35;3044:63;;3103:1;3100;3093:12;3044:63;2991:122;:::o;3119:139::-;3165:5;3203:6;3190:20;3181:29;;3219:33;3246:5;3219:33;:::i;:::-;3119:139;;;;:::o;3264:329::-;3323:6;3372:2;3360:9;3351:7;3347:23;3343:32;3340:119;;;3378:79;;:::i;:::-;3340:119;3498:1;3523:53;3568:7;3559:6;3548:9;3544:22;3523:53;:::i;:::-;3513:63;;3469:117;3264:329;;;;:::o;3599:126::-;3636:7;3676:42;3669:5;3665:54;3654:65;;3599:126;;;:::o;3731:96::-;3768:7;3797:24;3815:5;3797:24;:::i;:::-;3786:35;;3731:96;;;:::o;3833:118::-;3920:24;3938:5;3920:24;:::i;:::-;3915:3;3908:37;3833:118;;:::o;3957:222::-;4050:4;4088:2;4077:9;4073:18;4065:26;;4101:71;4169:1;4158:9;4154:17;4145:6;4101:71;:::i;:::-;3957:222;;;;:::o;4185:122::-;4258:24;4276:5;4258:24;:::i;:::-;4251:5;4248:35;4238:63;;4297:1;4294;4287:12;4238:63;4185:122;:::o;4313:139::-;4359:5;4397:6;4384:20;4375:29;;4413:33;4440:5;4413:33;:::i;:::-;4313:139;;;;:::o;4458:474::-;4526:6;4534;4583:2;4571:9;4562:7;4558:23;4554:32;4551:119;;;4589:79;;:::i;:::-;4551:119;4709:1;4734:53;4779:7;4770:6;4759:9;4755:22;4734:53;:::i;:::-;4724:63;;4680:117;4836:2;4862:53;4907:7;4898:6;4887:9;4883:22;4862:53;:::i;:::-;4852:63;;4807:118;4458:474;;;;;:::o;4938:118::-;5025:24;5043:5;5025:24;:::i;:::-;5020:3;5013:37;4938:118;;:::o;5062:222::-;5155:4;5193:2;5182:9;5178:18;5170:26;;5206:71;5274:1;5263:9;5259:17;5250:6;5206:71;:::i;:::-;5062:222;;;;:::o;5290:329::-;5349:6;5398:2;5386:9;5377:7;5373:23;5369:32;5366:119;;;5404:79;;:::i;:::-;5366:119;5524:1;5549:53;5594:7;5585:6;5574:9;5570:22;5549:53;:::i;:::-;5539:63;;5495:117;5290:329;;;;:::o;5625:619::-;5702:6;5710;5718;5767:2;5755:9;5746:7;5742:23;5738:32;5735:119;;;5773:79;;:::i;:::-;5735:119;5893:1;5918:53;5963:7;5954:6;5943:9;5939:22;5918:53;:::i;:::-;5908:63;;5864:117;6020:2;6046:53;6091:7;6082:6;6071:9;6067:22;6046:53;:::i;:::-;6036:63;;5991:118;6148:2;6174:53;6219:7;6210:6;6199:9;6195:22;6174:53;:::i;:::-;6164:63;;6119:118;5625:619;;;;;:::o;6250:77::-;6287:7;6316:5;6305:16;;6250:77;;;:::o;6333:122::-;6406:24;6424:5;6406:24;:::i;:::-;6399:5;6396:35;6386:63;;6445:1;6442;6435:12;6386:63;6333:122;:::o;6461:139::-;6507:5;6545:6;6532:20;6523:29;;6561:33;6588:5;6561:33;:::i;:::-;6461:139;;;;:::o;6606:329::-;6665:6;6714:2;6702:9;6693:7;6689:23;6685:32;6682:119;;;6720:79;;:::i;:::-;6682:119;6840:1;6865:53;6910:7;6901:6;6890:9;6886:22;6865:53;:::i;:::-;6855:63;;6811:117;6606:329;;;;:::o;6941:118::-;7028:24;7046:5;7028:24;:::i;:::-;7023:3;7016:37;6941:118;;:::o;7065:222::-;7158:4;7196:2;7185:9;7181:18;7173:26;;7209:71;7277:1;7266:9;7262:17;7253:6;7209:71;:::i;:::-;7065:222;;;;:::o;7293:474::-;7361:6;7369;7418:2;7406:9;7397:7;7393:23;7389:32;7386:119;;;7424:79;;:::i;:::-;7386:119;7544:1;7569:53;7614:7;7605:6;7594:9;7590:22;7569:53;:::i;:::-;7559:63;;7515:117;7671:2;7697:53;7742:7;7733:6;7722:9;7718:22;7697:53;:::i;:::-;7687:63;;7642:118;7293:474;;;;;:::o;7773:114::-;7840:6;7874:5;7868:12;7858:22;;7773:114;;;:::o;7893:184::-;7992:11;8026:6;8021:3;8014:19;8066:4;8061:3;8057:14;8042:29;;7893:184;;;;:::o;8083:132::-;8150:4;8173:3;8165:11;;8203:4;8198:3;8194:14;8186:22;;8083:132;;;:::o;8221:108::-;8298:24;8316:5;8298:24;:::i;:::-;8293:3;8286:37;8221:108;;:::o;8335:179::-;8404:10;8425:46;8467:3;8459:6;8425:46;:::i;:::-;8503:4;8498:3;8494:14;8480:28;;8335:179;;;;:::o;8520:113::-;8590:4;8622;8617:3;8613:14;8605:22;;8520:113;;;:::o;8669:732::-;8788:3;8817:54;8865:5;8817:54;:::i;:::-;8887:86;8966:6;8961:3;8887:86;:::i;:::-;8880:93;;8997:56;9047:5;8997:56;:::i;:::-;9076:7;9107:1;9092:284;9117:6;9114:1;9111:13;9092:284;;;9193:6;9187:13;9220:63;9279:3;9264:13;9220:63;:::i;:::-;9213:70;;9306:60;9359:6;9306:60;:::i;:::-;9296:70;;9152:224;9139:1;9136;9132:9;9127:14;;9092:284;;;9096:14;9392:3;9385:10;;8793:608;;;8669:732;;;;:::o;9407:373::-;9550:4;9588:2;9577:9;9573:18;9565:26;;9637:9;9631:4;9627:20;9623:1;9612:9;9608:17;9601:47;9665:108;9768:4;9759:6;9665:108;:::i;:::-;9657:116;;9407:373;;;;:::o;9786:116::-;9856:21;9871:5;9856:21;:::i;:::-;9849:5;9846:32;9836:60;;9892:1;9889;9882:12;9836:60;9786:116;:::o;9908:133::-;9951:5;9989:6;9976:20;9967:29;;10005:30;10029:5;10005:30;:::i;:::-;9908:133;;;;:::o;10047:468::-;10112:6;10120;10169:2;10157:9;10148:7;10144:23;10140:32;10137:119;;;10175:79;;:::i;:::-;10137:119;10295:1;10320:53;10365:7;10356:6;10345:9;10341:22;10320:53;:::i;:::-;10310:63;;10266:117;10422:2;10448:50;10490:7;10481:6;10470:9;10466:22;10448:50;:::i;:::-;10438:60;;10393:115;10047:468;;;;;:::o;10521:117::-;10630:1;10627;10620:12;10644:117;10753:1;10750;10743:12;10767:180;10815:77;10812:1;10805:88;10912:4;10909:1;10902:15;10936:4;10933:1;10926:15;10953:281;11036:27;11058:4;11036:27;:::i;:::-;11028:6;11024:40;11166:6;11154:10;11151:22;11130:18;11118:10;11115:34;11112:62;11109:88;;;11177:18;;:::i;:::-;11109:88;11217:10;11213:2;11206:22;10996:238;10953:281;;:::o;11240:129::-;11274:6;11301:20;;:::i;:::-;11291:30;;11330:33;11358:4;11350:6;11330:33;:::i;:::-;11240:129;;;:::o;11375:307::-;11436:4;11526:18;11518:6;11515:30;11512:56;;;11548:18;;:::i;:::-;11512:56;11586:29;11608:6;11586:29;:::i;:::-;11578:37;;11670:4;11664;11660:15;11652:23;;11375:307;;;:::o;11688:154::-;11772:6;11767:3;11762;11749:30;11834:1;11825:6;11820:3;11816:16;11809:27;11688:154;;;:::o;11848:410::-;11925:5;11950:65;11966:48;12007:6;11966:48;:::i;:::-;11950:65;:::i;:::-;11941:74;;12038:6;12031:5;12024:21;12076:4;12069:5;12065:16;12114:3;12105:6;12100:3;12096:16;12093:25;12090:112;;;12121:79;;:::i;:::-;12090:112;12211:41;12245:6;12240:3;12235;12211:41;:::i;:::-;11931:327;11848:410;;;;;:::o;12277:338::-;12332:5;12381:3;12374:4;12366:6;12362:17;12358:27;12348:122;;12389:79;;:::i;:::-;12348:122;12506:6;12493:20;12531:78;12605:3;12597:6;12590:4;12582:6;12578:17;12531:78;:::i;:::-;12522:87;;12338:277;12277:338;;;;:::o;12621:943::-;12716:6;12724;12732;12740;12789:3;12777:9;12768:7;12764:23;12760:33;12757:120;;;12796:79;;:::i;:::-;12757:120;12916:1;12941:53;12986:7;12977:6;12966:9;12962:22;12941:53;:::i;:::-;12931:63;;12887:117;13043:2;13069:53;13114:7;13105:6;13094:9;13090:22;13069:53;:::i;:::-;13059:63;;13014:118;13171:2;13197:53;13242:7;13233:6;13222:9;13218:22;13197:53;:::i;:::-;13187:63;;13142:118;13327:2;13316:9;13312:18;13299:32;13358:18;13350:6;13347:30;13344:117;;;13380:79;;:::i;:::-;13344:117;13485:62;13539:7;13530:6;13519:9;13515:22;13485:62;:::i;:::-;13475:72;;13270:287;12621:943;;;;;;;:::o;13570:474::-;13638:6;13646;13695:2;13683:9;13674:7;13670:23;13666:32;13663:119;;;13701:79;;:::i;:::-;13663:119;13821:1;13846:53;13891:7;13882:6;13871:9;13867:22;13846:53;:::i;:::-;13836:63;;13792:117;13948:2;13974:53;14019:7;14010:6;13999:9;13995:22;13974:53;:::i;:::-;13964:63;;13919:118;13570:474;;;;;:::o;14050:180::-;14098:77;14095:1;14088:88;14195:4;14192:1;14185:15;14219:4;14216:1;14209:15;14236:320;14280:6;14317:1;14311:4;14307:12;14297:22;;14364:1;14358:4;14354:12;14385:18;14375:81;;14441:4;14433:6;14429:17;14419:27;;14375:81;14503:2;14495:6;14492:14;14472:18;14469:38;14466:84;;;14522:18;;:::i;:::-;14466:84;14287:269;14236:320;;;:::o;14562:220::-;14702:34;14698:1;14690:6;14686:14;14679:58;14771:3;14766:2;14758:6;14754:15;14747:28;14562:220;:::o;14788:366::-;14930:3;14951:67;15015:2;15010:3;14951:67;:::i;:::-;14944:74;;15027:93;15116:3;15027:93;:::i;:::-;15145:2;15140:3;15136:12;15129:19;;14788:366;;;:::o;15160:419::-;15326:4;15364:2;15353:9;15349:18;15341:26;;15413:9;15407:4;15403:20;15399:1;15388:9;15384:17;15377:47;15441:131;15567:4;15441:131;:::i;:::-;15433:139;;15160:419;;;:::o;15585:248::-;15725:34;15721:1;15713:6;15709:14;15702:58;15794:31;15789:2;15781:6;15777:15;15770:56;15585:248;:::o;15839:366::-;15981:3;16002:67;16066:2;16061:3;16002:67;:::i;:::-;15995:74;;16078:93;16167:3;16078:93;:::i;:::-;16196:2;16191:3;16187:12;16180:19;;15839:366;;;:::o;16211:419::-;16377:4;16415:2;16404:9;16400:18;16392:26;;16464:9;16458:4;16454:20;16450:1;16439:9;16435:17;16428:47;16492:131;16618:4;16492:131;:::i;:::-;16484:139;;16211:419;;;:::o;16636:232::-;16776:34;16772:1;16764:6;16760:14;16753:58;16845:15;16840:2;16832:6;16828:15;16821:40;16636:232;:::o;16874:366::-;17016:3;17037:67;17101:2;17096:3;17037:67;:::i;:::-;17030:74;;17113:93;17202:3;17113:93;:::i;:::-;17231:2;17226:3;17222:12;17215:19;;16874:366;;;:::o;17246:419::-;17412:4;17450:2;17439:9;17435:18;17427:26;;17499:9;17493:4;17489:20;17485:1;17474:9;17470:17;17463:47;17527:131;17653:4;17527:131;:::i;:::-;17519:139;;17246:419;;;:::o;17671:230::-;17811:34;17807:1;17799:6;17795:14;17788:58;17880:13;17875:2;17867:6;17863:15;17856:38;17671:230;:::o;17907:366::-;18049:3;18070:67;18134:2;18129:3;18070:67;:::i;:::-;18063:74;;18146:93;18235:3;18146:93;:::i;:::-;18264:2;18259:3;18255:12;18248:19;;17907:366;;;:::o;18279:419::-;18445:4;18483:2;18472:9;18468:18;18460:26;;18532:9;18526:4;18522:20;18518:1;18507:9;18503:17;18496:47;18560:131;18686:4;18560:131;:::i;:::-;18552:139;;18279:419;;;:::o;18704:234::-;18844:34;18840:1;18832:6;18828:14;18821:58;18913:17;18908:2;18900:6;18896:15;18889:42;18704:234;:::o;18944:366::-;19086:3;19107:67;19171:2;19166:3;19107:67;:::i;:::-;19100:74;;19183:93;19272:3;19183:93;:::i;:::-;19301:2;19296:3;19292:12;19285:19;;18944:366;;;:::o;19316:419::-;19482:4;19520:2;19509:9;19505:18;19497:26;;19569:9;19563:4;19559:20;19555:1;19544:9;19540:17;19533:47;19597:131;19723:4;19597:131;:::i;:::-;19589:139;;19316:419;;;:::o;19741:182::-;19881:34;19877:1;19869:6;19865:14;19858:58;19741:182;:::o;19929:366::-;20071:3;20092:67;20156:2;20151:3;20092:67;:::i;:::-;20085:74;;20168:93;20257:3;20168:93;:::i;:::-;20286:2;20281:3;20277:12;20270:19;;19929:366;;;:::o;20301:419::-;20467:4;20505:2;20494:9;20490:18;20482:26;;20554:9;20548:4;20544:20;20540:1;20529:9;20525:17;20518:47;20582:131;20708:4;20582:131;:::i;:::-;20574:139;;20301:419;;;:::o;20726:168::-;20866:20;20862:1;20854:6;20850:14;20843:44;20726:168;:::o;20900:366::-;21042:3;21063:67;21127:2;21122:3;21063:67;:::i;:::-;21056:74;;21139:93;21228:3;21139:93;:::i;:::-;21257:2;21252:3;21248:12;21241:19;;20900:366;;;:::o;21272:419::-;21438:4;21476:2;21465:9;21461:18;21453:26;;21525:9;21519:4;21515:20;21511:1;21500:9;21496:17;21489:47;21553:131;21679:4;21553:131;:::i;:::-;21545:139;;21272:419;;;:::o;21697:167::-;21837:19;21833:1;21825:6;21821:14;21814:43;21697:167;:::o;21870:366::-;22012:3;22033:67;22097:2;22092:3;22033:67;:::i;:::-;22026:74;;22109:93;22198:3;22109:93;:::i;:::-;22227:2;22222:3;22218:12;22211:19;;21870:366;;;:::o;22242:419::-;22408:4;22446:2;22435:9;22431:18;22423:26;;22495:9;22489:4;22485:20;22481:1;22470:9;22466:17;22459:47;22523:131;22649:4;22523:131;:::i;:::-;22515:139;;22242:419;;;:::o;22667:180::-;22715:77;22712:1;22705:88;22812:4;22809:1;22802:15;22836:4;22833:1;22826:15;22853:305;22893:3;22912:20;22930:1;22912:20;:::i;:::-;22907:25;;22946:20;22964:1;22946:20;:::i;:::-;22941:25;;23100:1;23032:66;23028:74;23025:1;23022:81;23019:107;;;23106:18;;:::i;:::-;23019:107;23150:1;23147;23143:9;23136:16;;22853:305;;;;:::o;23164:173::-;23304:25;23300:1;23292:6;23288:14;23281:49;23164:173;:::o;23343:366::-;23485:3;23506:67;23570:2;23565:3;23506:67;:::i;:::-;23499:74;;23582:93;23671:3;23582:93;:::i;:::-;23700:2;23695:3;23691:12;23684:19;;23343:366;;;:::o;23715:419::-;23881:4;23919:2;23908:9;23904:18;23896:26;;23968:9;23962:4;23958:20;23954:1;23943:9;23939:17;23932:47;23996:131;24122:4;23996:131;:::i;:::-;23988:139;;23715:419;;;:::o;24140:180::-;24188:77;24185:1;24178:88;24285:4;24282:1;24275:15;24309:4;24306:1;24299:15;24326:233;24365:3;24388:24;24406:5;24388:24;:::i;:::-;24379:33;;24434:66;24427:5;24424:77;24421:103;;;24504:18;;:::i;:::-;24421:103;24551:1;24544:5;24540:13;24533:20;;24326:233;;;:::o;24565:231::-;24705:34;24701:1;24693:6;24689:14;24682:58;24774:14;24769:2;24761:6;24757:15;24750:39;24565:231;:::o;24802:366::-;24944:3;24965:67;25029:2;25024:3;24965:67;:::i;:::-;24958:74;;25041:93;25130:3;25041:93;:::i;:::-;25159:2;25154:3;25150:12;25143:19;;24802:366;;;:::o;25174:419::-;25340:4;25378:2;25367:9;25363:18;25355:26;;25427:9;25421:4;25417:20;25413:1;25402:9;25398:17;25391:47;25455:131;25581:4;25455:131;:::i;:::-;25447:139;;25174:419;;;:::o;25599:174::-;25739:26;25735:1;25727:6;25723:14;25716:50;25599:174;:::o;25779:366::-;25921:3;25942:67;26006:2;26001:3;25942:67;:::i;:::-;25935:74;;26018:93;26107:3;26018:93;:::i;:::-;26136:2;26131:3;26127:12;26120:19;;25779:366;;;:::o;26151:419::-;26317:4;26355:2;26344:9;26340:18;26332:26;;26404:9;26398:4;26394:20;26390:1;26379:9;26375:17;26368:47;26432:131;26558:4;26432:131;:::i;:::-;26424:139;;26151:419;;;:::o;26576:177::-;26716:29;26712:1;26704:6;26700:14;26693:53;26576:177;:::o;26759:366::-;26901:3;26922:67;26986:2;26981:3;26922:67;:::i;:::-;26915:74;;26998:93;27087:3;26998:93;:::i;:::-;27116:2;27111:3;27107:12;27100:19;;26759:366;;;:::o;27131:419::-;27297:4;27335:2;27324:9;27320:18;27312:26;;27384:9;27378:4;27374:20;27370:1;27359:9;27355:17;27348:47;27412:131;27538:4;27412:131;:::i;:::-;27404:139;;27131:419;;;:::o;27556:228::-;27696:34;27692:1;27684:6;27680:14;27673:58;27765:11;27760:2;27752:6;27748:15;27741:36;27556:228;:::o;27790:366::-;27932:3;27953:67;28017:2;28012:3;27953:67;:::i;:::-;27946:74;;28029:93;28118:3;28029:93;:::i;:::-;28147:2;28142:3;28138:12;28131:19;;27790:366;;;:::o;28162:419::-;28328:4;28366:2;28355:9;28351:18;28343:26;;28415:9;28409:4;28405:20;28401:1;28390:9;28386:17;28379:47;28443:131;28569:4;28443:131;:::i;:::-;28435:139;;28162:419;;;:::o;28587:181::-;28727:33;28723:1;28715:6;28711:14;28704:57;28587:181;:::o;28774:366::-;28916:3;28937:67;29001:2;28996:3;28937:67;:::i;:::-;28930:74;;29013:93;29102:3;29013:93;:::i;:::-;29131:2;29126:3;29122:12;29115:19;;28774:366;;;:::o;29146:419::-;29312:4;29350:2;29339:9;29335:18;29327:26;;29399:9;29393:4;29389:20;29385:1;29374:9;29370:17;29363:47;29427:131;29553:4;29427:131;:::i;:::-;29419:139;;29146:419;;;:::o;29571:332::-;29692:4;29730:2;29719:9;29715:18;29707:26;;29743:71;29811:1;29800:9;29796:17;29787:6;29743:71;:::i;:::-;29824:72;29892:2;29881:9;29877:18;29868:6;29824:72;:::i;:::-;29571:332;;;;;:::o;29909:308::-;29971:4;30061:18;30053:6;30050:30;30047:56;;;30083:18;;:::i;:::-;30047:56;30121:29;30143:6;30121:29;:::i;:::-;30113:37;;30205:4;30199;30195:15;30187:23;;29909:308;;;:::o;30223:421::-;30312:5;30337:66;30353:49;30395:6;30353:49;:::i;:::-;30337:66;:::i;:::-;30328:75;;30426:6;30419:5;30412:21;30464:4;30457:5;30453:16;30502:3;30493:6;30488:3;30484:16;30481:25;30478:112;;;30509:79;;:::i;:::-;30478:112;30599:39;30631:6;30626:3;30621;30599:39;:::i;:::-;30318:326;30223:421;;;;;:::o;30664:355::-;30731:5;30780:3;30773:4;30765:6;30761:17;30757:27;30747:122;;30788:79;;:::i;:::-;30747:122;30898:6;30892:13;30923:90;31009:3;31001:6;30994:4;30986:6;30982:17;30923:90;:::i;:::-;30914:99;;30737:282;30664:355;;;;:::o;31025:524::-;31105:6;31154:2;31142:9;31133:7;31129:23;31125:32;31122:119;;;31160:79;;:::i;:::-;31122:119;31301:1;31290:9;31286:17;31280:24;31331:18;31323:6;31320:30;31317:117;;;31353:79;;:::i;:::-;31317:117;31458:74;31524:7;31515:6;31504:9;31500:22;31458:74;:::i;:::-;31448:84;;31251:291;31025:524;;;;:::o;31555:224::-;31695:34;31691:1;31683:6;31679:14;31672:58;31764:7;31759:2;31751:6;31747:15;31740:32;31555:224;:::o;31785:366::-;31927:3;31948:67;32012:2;32007:3;31948:67;:::i;:::-;31941:74;;32024:93;32113:3;32024:93;:::i;:::-;32142:2;32137:3;32133:12;32126:19;;31785:366;;;:::o;32157:419::-;32323:4;32361:2;32350:9;32346:18;32338:26;;32410:9;32404:4;32400:20;32396:1;32385:9;32381:17;32374:47;32438:131;32564:4;32438:131;:::i;:::-;32430:139;;32157:419;;;:::o;32582:223::-;32722:34;32718:1;32710:6;32706:14;32699:58;32791:6;32786:2;32778:6;32774:15;32767:31;32582:223;:::o;32811:366::-;32953:3;32974:67;33038:2;33033:3;32974:67;:::i;:::-;32967:74;;33050:93;33139:3;33050:93;:::i;:::-;33168:2;33163:3;33159:12;33152:19;;32811:366;;;:::o;33183:419::-;33349:4;33387:2;33376:9;33372:18;33364:26;;33436:9;33430:4;33426:20;33422:1;33411:9;33407:17;33400:47;33464:131;33590:4;33464:131;:::i;:::-;33456:139;;33183:419;;;:::o;33608:175::-;33748:27;33744:1;33736:6;33732:14;33725:51;33608:175;:::o;33789:366::-;33931:3;33952:67;34016:2;34011:3;33952:67;:::i;:::-;33945:74;;34028:93;34117:3;34028:93;:::i;:::-;34146:2;34141:3;34137:12;34130:19;;33789:366;;;:::o;34161:419::-;34327:4;34365:2;34354:9;34350:18;34342:26;;34414:9;34408:4;34404:20;34400:1;34389:9;34385:17;34378:47;34442:131;34568:4;34442:131;:::i;:::-;34434:139;;34161:419;;;:::o;34586:237::-;34726:34;34722:1;34714:6;34710:14;34703:58;34795:20;34790:2;34782:6;34778:15;34771:45;34586:237;:::o;34829:366::-;34971:3;34992:67;35056:2;35051:3;34992:67;:::i;:::-;34985:74;;35068:93;35157:3;35068:93;:::i;:::-;35186:2;35181:3;35177:12;35170:19;;34829:366;;;:::o;35201:419::-;35367:4;35405:2;35394:9;35390:18;35382:26;;35454:9;35448:4;35444:20;35440:1;35429:9;35425:17;35418:47;35482:131;35608:4;35482:131;:::i;:::-;35474:139;;35201:419;;;:::o;35626:172::-;35766:24;35762:1;35754:6;35750:14;35743:48;35626:172;:::o;35804:366::-;35946:3;35967:67;36031:2;36026:3;35967:67;:::i;:::-;35960:74;;36043:93;36132:3;36043:93;:::i;:::-;36161:2;36156:3;36152:12;36145:19;;35804:366;;;:::o;36176:419::-;36342:4;36380:2;36369:9;36365:18;36357:26;;36429:9;36423:4;36419:20;36415:1;36404:9;36400:17;36393:47;36457:131;36583:4;36457:131;:::i;:::-;36449:139;;36176:419;;;:::o;36601:148::-;36703:11;36740:3;36725:18;;36601:148;;;;:::o;36755:173::-;36895:25;36891:1;36883:6;36879:14;36872:49;36755:173;:::o;36934:402::-;37094:3;37115:85;37197:2;37192:3;37115:85;:::i;:::-;37108:92;;37209:93;37298:3;37209:93;:::i;:::-;37327:2;37322:3;37318:12;37311:19;;36934:402;;;:::o;37342:377::-;37448:3;37476:39;37509:5;37476:39;:::i;:::-;37531:89;37613:6;37608:3;37531:89;:::i;:::-;37524:96;;37629:52;37674:6;37669:3;37662:4;37655:5;37651:16;37629:52;:::i;:::-;37706:6;37701:3;37697:16;37690:23;;37452:267;37342:377;;;;:::o;37725:167::-;37865:19;37861:1;37853:6;37849:14;37842:43;37725:167;:::o;37898:402::-;38058:3;38079:85;38161:2;38156:3;38079:85;:::i;:::-;38072:92;;38173:93;38262:3;38173:93;:::i;:::-;38291:2;38286:3;38282:12;38275:19;;37898:402;;;:::o;38306:967::-;38688:3;38710:148;38854:3;38710:148;:::i;:::-;38703:155;;38875:95;38966:3;38957:6;38875:95;:::i;:::-;38868:102;;38987:148;39131:3;38987:148;:::i;:::-;38980:155;;39152:95;39243:3;39234:6;39152:95;:::i;:::-;39145:102;;39264:3;39257:10;;38306:967;;;;;:::o;39279:98::-;39330:6;39364:5;39358:12;39348:22;;39279:98;;;:::o;39383:168::-;39466:11;39500:6;39495:3;39488:19;39540:4;39535:3;39531:14;39516:29;;39383:168;;;;:::o;39557:360::-;39643:3;39671:38;39703:5;39671:38;:::i;:::-;39725:70;39788:6;39783:3;39725:70;:::i;:::-;39718:77;;39804:52;39849:6;39844:3;39837:4;39830:5;39826:16;39804:52;:::i;:::-;39881:29;39903:6;39881:29;:::i;:::-;39876:3;39872:39;39865:46;;39647:270;39557:360;;;;:::o;39923:640::-;40118:4;40156:3;40145:9;40141:19;40133:27;;40170:71;40238:1;40227:9;40223:17;40214:6;40170:71;:::i;:::-;40251:72;40319:2;40308:9;40304:18;40295:6;40251:72;:::i;:::-;40333;40401:2;40390:9;40386:18;40377:6;40333:72;:::i;:::-;40452:9;40446:4;40442:20;40437:2;40426:9;40422:18;40415:48;40480:76;40551:4;40542:6;40480:76;:::i;:::-;40472:84;;39923:640;;;;;;;:::o;40569:141::-;40625:5;40656:6;40650:13;40641:22;;40672:32;40698:5;40672:32;:::i;:::-;40569:141;;;;:::o;40716:349::-;40785:6;40834:2;40822:9;40813:7;40809:23;40805:32;40802:119;;;40840:79;;:::i;:::-;40802:119;40960:1;40985:63;41040:7;41031:6;41020:9;41016:22;40985:63;:::i;:::-;40975:73;;40931:127;40716:349;;;;:::o;41071:240::-;41211:34;41207:1;41199:6;41195:14;41188:58;41280:23;41275:2;41267:6;41263:15;41256:48;41071:240;:::o;41317:366::-;41459:3;41480:67;41544:2;41539:3;41480:67;:::i;:::-;41473:74;;41556:93;41645:3;41556:93;:::i;:::-;41674:2;41669:3;41665:12;41658:19;;41317:366;;;:::o;41689:419::-;41855:4;41893:2;41882:9;41878:18;41870:26;;41942:9;41936:4;41932:20;41928:1;41917:9;41913:17;41906:47;41970:131;42096:4;41970:131;:::i;:::-;41962:139;;41689:419;;;:::o;42114:348::-;42154:7;42177:20;42195:1;42177:20;:::i;:::-;42172:25;;42211:20;42229:1;42211:20;:::i;:::-;42206:25;;42399:1;42331:66;42327:74;42324:1;42321:81;42316:1;42309:9;42302:17;42298:105;42295:131;;;42406:18;;:::i;:::-;42295:131;42454:1;42451;42447:9;42436:20;;42114:348;;;;:::o;42468:171::-;42507:3;42530:24;42548:5;42530:24;:::i;:::-;42521:33;;42576:4;42569:5;42566:15;42563:41;;;42584:18;;:::i;:::-;42563:41;42631:1;42624:5;42620:13;42613:20;;42468:171;;;:::o;42645:182::-;42785:34;42781:1;42773:6;42769:14;42762:58;42645:182;:::o;42833:366::-;42975:3;42996:67;43060:2;43055:3;42996:67;:::i;:::-;42989:74;;43072:93;43161:3;43072:93;:::i;:::-;43190:2;43185:3;43181:12;43174:19;;42833:366;;;:::o;43205:419::-;43371:4;43409:2;43398:9;43394:18;43386:26;;43458:9;43452:4;43448:20;43444:1;43433:9;43429:17;43422:47;43486:131;43612:4;43486:131;:::i;:::-;43478:139;;43205:419;;;:::o;43630:182::-;43770:34;43766:1;43758:6;43754:14;43747:58;43630:182;:::o;43818:366::-;43960:3;43981:67;44045:2;44040:3;43981:67;:::i;:::-;43974:74;;44057:93;44146:3;44057:93;:::i;:::-;44175:2;44170:3;44166:12;44159:19;;43818:366;;;:::o;44190:419::-;44356:4;44394:2;44383:9;44379:18;44371:26;;44443:9;44437:4;44433:20;44429:1;44418:9;44414:17;44407:47;44471:131;44597:4;44471:131;:::i;:::-;44463:139;;44190:419;;;:::o;44615:178::-;44755:30;44751:1;44743:6;44739:14;44732:54;44615:178;:::o;44799:366::-;44941:3;44962:67;45026:2;45021:3;44962:67;:::i;:::-;44955:74;;45038:93;45127:3;45038:93;:::i;:::-;45156:2;45151:3;45147:12;45140:19;;44799:366;;;:::o;45171:419::-;45337:4;45375:2;45364:9;45360:18;45352:26;;45424:9;45418:4;45414:20;45410:1;45399:9;45395:17;45388:47;45452:131;45578:4;45452:131;:::i;:::-;45444:139;;45171:419;;;:::o;45596:191::-;45636:4;45656:20;45674:1;45656:20;:::i;:::-;45651:25;;45690:20;45708:1;45690:20;:::i;:::-;45685:25;;45729:1;45726;45723:8;45720:34;;;45734:18;;:::i;:::-;45720:34;45779:1;45776;45772:9;45764:17;;45596:191;;;;:::o;45793:180::-;45841:77;45838:1;45831:88;45938:4;45935:1;45928:15;45962:4;45959:1;45952:15", + "source": "// SPDX-License-Identifier: MIT\r\npragma solidity 0.8.10;\r\n\r\nimport \"@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol\";\r\nimport \"@openzeppelin/contracts/utils/Counters.sol\";\r\nimport \"@openzeppelin/contracts/access/AccessControl.sol\";\r\nimport \"../../interfaces/IMetaData.sol\";\r\n\r\ncontract NFTSbt is AccessControl, ERC721Enumerable {\r\n using Counters for Counters.Counter;\r\n address private _metaAddress;\r\n bytes32 public constant BURN_ROLE = keccak256(\"BURN_ROLE\");\r\n bytes32 public constant MINTER_ROLE = keccak256(\"MINTER_ROLE\");\r\n uint256 public immutable supplyLimit;\r\n\r\n Counters.Counter private _tokenIdCounter;\r\n\r\n uint256 public maxBatchSize = 500;\r\n\r\n constructor(\r\n string memory _name,\r\n string memory _symbol,\r\n uint256 _supplyLimt\r\n ) ERC721(_name, _symbol) {\r\n supplyLimit = _supplyLimt;\r\n _setRoleAdmin(BURN_ROLE, DEFAULT_ADMIN_ROLE);\r\n _setRoleAdmin(MINTER_ROLE, DEFAULT_ADMIN_ROLE);\r\n\r\n _setupRole(DEFAULT_ADMIN_ROLE, msg.sender);\r\n _setupRole(MINTER_ROLE, msg.sender);\r\n _setupRole(BURN_ROLE, msg.sender);\r\n }\r\n\r\n /**\r\n * @dev See {IERC165-supportsInterface}.\r\n */\r\n function supportsInterface(\r\n bytes4 interfaceId\r\n )\r\n public\r\n view\r\n virtual\r\n override(AccessControl, ERC721Enumerable)\r\n returns (bool)\r\n {\r\n return super.supportsInterface(interfaceId);\r\n }\r\n\r\n function _beforeTokenTransfer(\r\n address from,\r\n address to,\r\n uint256 firstTokenId,\r\n uint256 batchSize\r\n ) internal virtual override {\r\n require(from == address(0) || to == address(0), \"Token not transferable\");\r\n super._beforeTokenTransfer(from, to, firstTokenId, batchSize);\r\n }\r\n\r\n /**\r\n * @dev Set token URI\r\n */\r\n function updateMetaAddress(\r\n address metaAddress\r\n ) external onlyRole(DEFAULT_ADMIN_ROLE) {\r\n _metaAddress = metaAddress;\r\n }\r\n\r\n /**\r\n * @dev one type badge has same tokenURI\r\n */\r\n function tokenURI(\r\n uint256 tokenId\r\n ) public view override returns (string memory) {\r\n require(_exists(tokenId), \"URI query for nonexistent token\");\r\n return IMetaData(_metaAddress).getMetaData(address(this), tokenId);\r\n }\r\n\r\n function batchMint(\r\n address to,\r\n uint256 count\r\n ) external onlyRole(MINTER_ROLE) returns (uint256[] memory) {\r\n require(count > 0, \"tokenIds too small\");\r\n require(count <= maxBatchSize, \"tokenIds too many\");\r\n if (supplyLimit > 0) {\r\n require(\r\n (totalSupply() + count) <= supplyLimit,\r\n \"Exceed the total supply\"\r\n );\r\n }\r\n uint256[] memory tokenIds = new uint256[](count);\r\n for (uint256 i = 0; i < count; i++) {\r\n _tokenIdCounter.increment();\r\n uint256 tokenId = _tokenIdCounter.current();\r\n _safeMint(to, tokenId);\r\n tokenIds[i] = tokenId;\r\n }\r\n return tokenIds;\r\n }\r\n\r\n function mint(address to) external onlyRole(MINTER_ROLE) returns (uint256) {\r\n require(to != address(0), \"Cannot mint to zero address\");\r\n if (supplyLimit > 0) {\r\n require((totalSupply() + 1) <= supplyLimit, \"Exceed the total supply\");\r\n }\r\n _tokenIdCounter.increment();\r\n uint256 tokenId = _tokenIdCounter.current();\r\n _safeMint(to, tokenId);\r\n return tokenId;\r\n }\r\n\r\n function burn(uint256 tokenId) external onlyRole(BURN_ROLE) {\r\n require(\r\n _isApprovedOrOwner(_msgSender(), tokenId),\r\n \"Caller is not owner nor approved\"\r\n );\r\n _burn(tokenId);\r\n }\r\n\r\n /**\r\n * @dev Grant mint role to address\r\n */\r\n function setMintRole(address to) external {\r\n grantRole(MINTER_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Remove mint role to address\r\n */\r\n function removeMintRole(address to) external {\r\n revokeRole(MINTER_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Grant burn role to address\r\n */\r\n function setBurnRole(address to) external {\r\n grantRole(BURN_ROLE, to);\r\n }\r\n\r\n /**\r\n * @dev Remove burn role to address\r\n */\r\n function removeBurnRole(address to) external {\r\n revokeRole(BURN_ROLE, to);\r\n }\r\n}\r\n", + "sourcePath": "C:\\work\\CEBG\\becrypto\\contracts\\tokens\\erc721\\NFTSbt.sol", "ast": { "absolutePath": "project:/contracts/tokens/erc721/NFTSbt.sol", "exportedSymbols": { @@ -20996,116 +22762,116 @@ 315 ], "Address": [ - 6401 + 2191 ], "Context": [ - 6470 + 2213 ], "Counters": [ - 6544 + 2287 ], "ERC165": [ - 7163 + 2540 ], "ERC721": [ - 5498 + 1315 ], "ERC721Enumerable": [ - 5986 + 1803 ], "IAccessControl": [ - 513 + 388 ], "IERC165": [ - 7175 + 2552 ], "IERC721": [ - 5614 + 1431 ], "IERC721Enumerable": [ - 6017 + 1834 ], "IERC721Metadata": [ - 6044 + 1861 ], "IERC721Receiver": [ - 5632 + 1449 ], "IMetaData": [ - 10588 + 3535 ], "Math": [ - 8041 + 3418 ], "NFTSbt": [ - 18743 + 3930 ], "SignedMath": [ - 8146 + 3523 ], "Strings": [ - 6773 + 2516 ] }, - "id": 18744, + "id": 3931, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 18444, + "id": 3537, "literals": [ "solidity", "0.8", ".10" ], "nodeType": "PragmaDirective", - "src": "33:23:73" + "src": "33:23:17" }, { "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol", "file": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol", - "id": 18445, + "id": 3538, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 18744, - "sourceUnit": 5987, - "src": "60:78:73", + "scope": 3931, + "sourceUnit": 1804, + "src": "60:78:17", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "@openzeppelin/contracts/utils/Counters.sol", "file": "@openzeppelin/contracts/utils/Counters.sol", - "id": 18446, + "id": 3539, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 18744, - "sourceUnit": 6545, - "src": "140:52:73", + "scope": 3931, + "sourceUnit": 2288, + "src": "140:52:17", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "@openzeppelin/contracts/access/AccessControl.sol", "file": "@openzeppelin/contracts/access/AccessControl.sol", - "id": 18447, + "id": 3540, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 18744, + "scope": 3931, "sourceUnit": 316, - "src": "194:58:73", + "src": "194:58:17", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "project:/contracts/interfaces/IMetaData.sol", "file": "../../interfaces/IMetaData.sol", - "id": 18448, + "id": 3541, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 18744, - "sourceUnit": 10589, - "src": "254:40:73", + "scope": 3931, + "sourceUnit": 3536, + "src": "254:40:17", "symbolAliases": [], "unitAlias": "" }, @@ -21114,89 +22880,89 @@ "baseContracts": [ { "baseName": { - "id": 18449, + "id": 3542, "name": "AccessControl", "nodeType": "IdentifierPath", "referencedDeclaration": 315, - "src": "317:13:73" + "src": "317:13:17" }, - "id": 18450, + "id": 3543, "nodeType": "InheritanceSpecifier", - "src": "317:13:73" + "src": "317:13:17" }, { "baseName": { - "id": 18451, + "id": 3544, "name": "ERC721Enumerable", "nodeType": "IdentifierPath", - "referencedDeclaration": 5986, - "src": "332:16:73" + "referencedDeclaration": 1803, + "src": "332:16:17" }, - "id": 18452, + "id": 3545, "nodeType": "InheritanceSpecifier", - "src": "332:16:73" + "src": "332:16:17" } ], "canonicalName": "NFTSbt", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 18743, + "id": 3930, "linearizedBaseContracts": [ - 18743, - 5986, - 6017, - 5498, - 6044, - 5614, + 3930, + 1803, + 1834, + 1315, + 1861, + 1431, 315, - 7163, - 7175, - 513, - 6470 + 2540, + 2552, + 388, + 2213 ], "name": "NFTSbt", - "nameLocation": "307:6:73", + "nameLocation": "307:6:17", "nodeType": "ContractDefinition", "nodes": [ { - "id": 18456, + "id": 3549, "libraryName": { - "id": 18453, + "id": 3546, "name": "Counters", "nodeType": "IdentifierPath", - "referencedDeclaration": 6544, - "src": "360:8:73" + "referencedDeclaration": 2287, + "src": "360:8:17" }, "nodeType": "UsingForDirective", - "src": "354:36:73", + "src": "354:36:17", "typeName": { - "id": 18455, + "id": 3548, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 18454, + "id": 3547, "name": "Counters.Counter", "nodeType": "IdentifierPath", - "referencedDeclaration": 6476, - "src": "373:16:73" + "referencedDeclaration": 2219, + "src": "373:16:17" }, - "referencedDeclaration": 6476, - "src": "373:16:73", + "referencedDeclaration": 2219, + "src": "373:16:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$6476_storage_ptr", + "typeIdentifier": "t_struct$_Counter_$2219_storage_ptr", "typeString": "struct Counters.Counter" } } }, { "constant": false, - "id": 18458, + "id": 3551, "mutability": "mutable", "name": "_metaAddress", - "nameLocation": "410:12:73", + "nameLocation": "410:12:17", "nodeType": "VariableDeclaration", - "scope": 18743, - "src": "394:28:73", + "scope": 3930, + "src": "394:28:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21204,10 +22970,10 @@ "typeString": "address" }, "typeName": { - "id": 18457, + "id": 3550, "name": "address", "nodeType": "ElementaryTypeName", - "src": "394:7:73", + "src": "394:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -21219,13 +22985,13 @@ { "constant": true, "functionSelector": "b930908f", - "id": 18463, + "id": 3556, "mutability": "constant", "name": "BURN_ROLE", - "nameLocation": "451:9:73", + "nameLocation": "451:9:17", "nodeType": "VariableDeclaration", - "scope": 18743, - "src": "427:58:73", + "scope": 3930, + "src": "427:58:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21233,10 +22999,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 18459, + "id": 3552, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "427:7:73", + "src": "427:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21246,14 +23012,14 @@ "arguments": [ { "hexValue": "4255524e5f524f4c45", - "id": 18461, + "id": 3554, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "473:11:73", + "src": "473:11:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_e97b137254058bd94f28d2f3eb79e2d34074ffb488d042e3bc958e0a57d2fa22", "typeString": "literal_string \"BURN_ROLE\"" @@ -21268,18 +23034,18 @@ "typeString": "literal_string \"BURN_ROLE\"" } ], - "id": 18460, + "id": 3553, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "463:9:73", + "src": "463:9:17", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 18462, + "id": 3555, "isConstant": false, "isLValue": false, "isPure": true, @@ -21287,7 +23053,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "463:22:73", + "src": "463:22:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -21299,13 +23065,13 @@ { "constant": true, "functionSelector": "d5391393", - "id": 18468, + "id": 3561, "mutability": "constant", "name": "MINTER_ROLE", - "nameLocation": "514:11:73", + "nameLocation": "514:11:17", "nodeType": "VariableDeclaration", - "scope": 18743, - "src": "490:62:73", + "scope": 3930, + "src": "490:62:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21313,10 +23079,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 18464, + "id": 3557, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "490:7:73", + "src": "490:7:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21326,14 +23092,14 @@ "arguments": [ { "hexValue": "4d494e5445525f524f4c45", - "id": 18466, + "id": 3559, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "538:13:73", + "src": "538:13:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6", "typeString": "literal_string \"MINTER_ROLE\"" @@ -21348,18 +23114,18 @@ "typeString": "literal_string \"MINTER_ROLE\"" } ], - "id": 18465, + "id": 3558, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967288, - "src": "528:9:73", + "src": "528:9:17", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 18467, + "id": 3560, "isConstant": false, "isLValue": false, "isPure": true, @@ -21367,7 +23133,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "528:24:73", + "src": "528:24:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", @@ -21379,13 +23145,13 @@ { "constant": false, "functionSelector": "19d1997a", - "id": 18470, + "id": 3563, "mutability": "immutable", "name": "supplyLimit", - "nameLocation": "582:11:73", + "nameLocation": "582:11:17", "nodeType": "VariableDeclaration", - "scope": 18743, - "src": "557:36:73", + "scope": 3930, + "src": "557:36:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -21393,10 +23159,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18469, + "id": 3562, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "557:7:73", + "src": "557:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21406,58 +23172,102 @@ }, { "constant": false, - "id": 18473, + "id": 3566, "mutability": "mutable", "name": "_tokenIdCounter", - "nameLocation": "625:15:73", + "nameLocation": "625:15:17", "nodeType": "VariableDeclaration", - "scope": 18743, - "src": "600:40:73", + "scope": 3930, + "src": "600:40:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$6476_storage", + "typeIdentifier": "t_struct$_Counter_$2219_storage", "typeString": "struct Counters.Counter" }, "typeName": { - "id": 18472, + "id": 3565, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 18471, + "id": 3564, "name": "Counters.Counter", "nodeType": "IdentifierPath", - "referencedDeclaration": 6476, - "src": "600:16:73" + "referencedDeclaration": 2219, + "src": "600:16:17" }, - "referencedDeclaration": 6476, - "src": "600:16:73", + "referencedDeclaration": 2219, + "src": "600:16:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$6476_storage_ptr", + "typeIdentifier": "t_struct$_Counter_$2219_storage_ptr", "typeString": "struct Counters.Counter" } }, "visibility": "private" }, + { + "constant": false, + "functionSelector": "2913daa0", + "id": 3569, + "mutability": "mutable", + "name": "maxBatchSize", + "nameLocation": "662:12:17", + "nodeType": "VariableDeclaration", + "scope": 3930, + "src": "647:33:17", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3567, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "647:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "353030", + "id": 3568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "677:3:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_500_by_1", + "typeString": "int_const 500" + }, + "value": "500" + }, + "visibility": "public" + }, { "body": { - "id": 18518, + "id": 3614, "nodeType": "Block", - "src": "767:275:73", + "src": "807:275:17", "statements": [ { "expression": { - "id": 18488, + "id": 3584, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 18486, + "id": 3582, "name": "supplyLimit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18470, - "src": "774:11:73", + "referencedDeclaration": 3563, + "src": "814:11:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21466,49 +23276,49 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 18487, + "id": 3583, "name": "_supplyLimt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18479, - "src": "788:11:73", + "referencedDeclaration": 3575, + "src": "828:11:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "774:25:73", + "src": "814:25:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 18489, + "id": 3585, "nodeType": "ExpressionStatement", - "src": "774:25:73" + "src": "814:25:17" }, { "expression": { "arguments": [ { - "id": 18491, + "id": 3587, "name": "BURN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18463, - "src": "820:9:73", + "referencedDeclaration": 3556, + "src": "860:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18492, + "id": 3588, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "831:18:73", + "src": "871:18:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21526,18 +23336,18 @@ "typeString": "bytes32" } ], - "id": 18490, + "id": 3586, "name": "_setRoleAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 251, - "src": "806:13:73", + "src": "846:13:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (bytes32,bytes32)" } }, - "id": 18493, + "id": 3589, "isConstant": false, "isLValue": false, "isPure": false, @@ -21545,39 +23355,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "806:44:73", + "src": "846:44:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18494, + "id": 3590, "nodeType": "ExpressionStatement", - "src": "806:44:73" + "src": "846:44:17" }, { "expression": { "arguments": [ { - "id": 18496, + "id": 3592, "name": "MINTER_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18468, - "src": "871:11:73", + "referencedDeclaration": 3561, + "src": "911:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18497, + "id": 3593, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "884:18:73", + "src": "924:18:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21595,18 +23405,18 @@ "typeString": "bytes32" } ], - "id": 18495, + "id": 3591, "name": "_setRoleAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 251, - "src": "857:13:73", + "src": "897:13:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", "typeString": "function (bytes32,bytes32)" } }, - "id": 18498, + "id": 3594, "isConstant": false, "isLValue": false, "isPure": false, @@ -21614,27 +23424,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "857:46:73", + "src": "897:46:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18499, + "id": 3595, "nodeType": "ExpressionStatement", - "src": "857:46:73" + "src": "897:46:17" }, { "expression": { "arguments": [ { - "id": 18501, + "id": 3597, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "923:18:73", + "src": "963:18:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21642,25 +23452,25 @@ }, { "expression": { - "id": 18502, + "id": 3598, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "943:3:73", + "src": "983:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 18503, + "id": 3599, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "943:10:73", + "src": "983:10:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21678,18 +23488,18 @@ "typeString": "address" } ], - "id": 18500, + "id": 3596, "name": "_setupRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 223, - "src": "912:10:73", + "src": "952:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18504, + "id": 3600, "isConstant": false, "isLValue": false, "isPure": false, @@ -21697,27 +23507,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "912:42:73", + "src": "952:42:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18505, + "id": 3601, "nodeType": "ExpressionStatement", - "src": "912:42:73" + "src": "952:42:17" }, { "expression": { "arguments": [ { - "id": 18507, + "id": 3603, "name": "MINTER_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18468, - "src": "972:11:73", + "referencedDeclaration": 3561, + "src": "1012:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21725,25 +23535,25 @@ }, { "expression": { - "id": 18508, + "id": 3604, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "985:3:73", + "src": "1025:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 18509, + "id": 3605, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "985:10:73", + "src": "1025:10:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21761,18 +23571,18 @@ "typeString": "address" } ], - "id": 18506, + "id": 3602, "name": "_setupRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 223, - "src": "961:10:73", + "src": "1001:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18510, + "id": 3606, "isConstant": false, "isLValue": false, "isPure": false, @@ -21780,27 +23590,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "961:35:73", + "src": "1001:35:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18511, + "id": 3607, "nodeType": "ExpressionStatement", - "src": "961:35:73" + "src": "1001:35:17" }, { "expression": { "arguments": [ { - "id": 18513, + "id": 3609, "name": "BURN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18463, - "src": "1014:9:73", + "referencedDeclaration": 3556, + "src": "1054:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21808,25 +23618,25 @@ }, { "expression": { - "id": 18514, + "id": 3610, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967281, - "src": "1025:3:73", + "src": "1065:3:17", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 18515, + "id": 3611, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", - "src": "1025:10:73", + "src": "1065:10:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21844,18 +23654,18 @@ "typeString": "address" } ], - "id": 18512, + "id": 3608, "name": "_setupRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 223, - "src": "1003:10:73", + "src": "1043:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18516, + "id": 3612, "isConstant": false, "isLValue": false, "isPure": false, @@ -21863,79 +23673,79 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1003:33:73", + "src": "1043:33:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18517, + "id": 3613, "nodeType": "ExpressionStatement", - "src": "1003:33:73" + "src": "1043:33:17" } ] }, - "id": 18519, + "id": 3615, "implemented": true, "kind": "constructor", "modifiers": [ { "arguments": [ { - "id": 18482, + "id": 3578, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18475, - "src": "751:5:73", + "referencedDeclaration": 3571, + "src": "791:5:17", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { - "id": 18483, + "id": 3579, "name": "_symbol", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18477, - "src": "758:7:73", + "referencedDeclaration": 3573, + "src": "798:7:17", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } } ], - "id": 18484, + "id": 3580, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 18481, + "id": 3577, "name": "ERC721", "nodeType": "IdentifierPath", - "referencedDeclaration": 5498, - "src": "744:6:73" + "referencedDeclaration": 1315, + "src": "784:6:17" }, "nodeType": "ModifierInvocation", - "src": "744:22:73" + "src": "784:22:17" } ], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 18480, + "id": 3576, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18475, + "id": 3571, "mutability": "mutable", "name": "_name", - "nameLocation": "679:5:73", + "nameLocation": "719:5:17", "nodeType": "VariableDeclaration", - "scope": 18519, - "src": "665:19:73", + "scope": 3615, + "src": "705:19:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -21943,10 +23753,10 @@ "typeString": "string" }, "typeName": { - "id": 18474, + "id": 3570, "name": "string", "nodeType": "ElementaryTypeName", - "src": "665:6:73", + "src": "705:6:17", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21956,13 +23766,13 @@ }, { "constant": false, - "id": 18477, + "id": 3573, "mutability": "mutable", "name": "_symbol", - "nameLocation": "705:7:73", + "nameLocation": "745:7:17", "nodeType": "VariableDeclaration", - "scope": 18519, - "src": "691:21:73", + "scope": 3615, + "src": "731:21:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -21970,10 +23780,10 @@ "typeString": "string" }, "typeName": { - "id": 18476, + "id": 3572, "name": "string", "nodeType": "ElementaryTypeName", - "src": "691:6:73", + "src": "731:6:17", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21983,13 +23793,13 @@ }, { "constant": false, - "id": 18479, + "id": 3575, "mutability": "mutable", "name": "_supplyLimt", - "nameLocation": "727:11:73", + "nameLocation": "767:11:17", "nodeType": "VariableDeclaration", - "scope": 18519, - "src": "719:19:73", + "scope": 3615, + "src": "759:19:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21997,10 +23807,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18478, + "id": 3574, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "719:7:73", + "src": "759:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22009,16 +23819,16 @@ "visibility": "internal" } ], - "src": "658:85:73" + "src": "698:85:17" }, "returnParameters": { - "id": 18485, + "id": 3581, "nodeType": "ParameterList", "parameters": [], - "src": "767:0:73" + "src": "807:0:17" }, - "scope": 18743, - "src": "647:395:73", + "scope": 3930, + "src": "687:395:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" @@ -22026,23 +23836,23 @@ { "baseFunctions": [ 60, - 5682 + 1499 ], "body": { - "id": 18535, + "id": 3631, "nodeType": "Block", - "src": "1268:56:73", + "src": "1308:56:17", "statements": [ { "expression": { "arguments": [ { - "id": 18532, + "id": 3628, "name": "interfaceId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18522, - "src": "1306:11:73", + "referencedDeclaration": 3618, + "src": "1346:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" @@ -22057,32 +23867,32 @@ } ], "expression": { - "id": 18530, + "id": 3626, "name": "super", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967271, - "src": "1282:5:73", + "src": "1322:5:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_NFTSbt_$18743_$", + "typeIdentifier": "t_type$_t_super$_NFTSbt_$3930_$", "typeString": "type(contract super NFTSbt)" } }, - "id": 18531, + "id": 3627, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "supportsInterface", "nodeType": "MemberAccess", - "referencedDeclaration": 5682, - "src": "1282:23:73", + "referencedDeclaration": 1499, + "src": "1322:23:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", "typeString": "function (bytes4) view returns (bool)" } }, - "id": 18533, + "id": 3629, "isConstant": false, "isLValue": false, "isPure": false, @@ -22090,68 +23900,68 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1282:36:73", + "src": "1322:36:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 18529, - "id": 18534, + "functionReturnParameters": 3625, + "id": 3630, "nodeType": "Return", - "src": "1275:43:73" + "src": "1315:43:17" } ] }, "documentation": { - "id": 18520, + "id": 3616, "nodeType": "StructuredDocumentation", - "src": "1048:54:73", + "src": "1088:54:17", "text": " @dev See {IERC165-supportsInterface}." }, "functionSelector": "01ffc9a7", - "id": 18536, + "id": 3632, "implemented": true, "kind": "function", "modifiers": [], "name": "supportsInterface", - "nameLocation": "1115:17:73", + "nameLocation": "1155:17:17", "nodeType": "FunctionDefinition", "overrides": { - "id": 18526, + "id": 3622, "nodeType": "OverrideSpecifier", "overrides": [ { - "id": 18524, + "id": 3620, "name": "AccessControl", "nodeType": "IdentifierPath", "referencedDeclaration": 315, - "src": "1212:13:73" + "src": "1252:13:17" }, { - "id": 18525, + "id": 3621, "name": "ERC721Enumerable", "nodeType": "IdentifierPath", - "referencedDeclaration": 5986, - "src": "1227:16:73" + "referencedDeclaration": 1803, + "src": "1267:16:17" } ], - "src": "1203:41:73" + "src": "1243:41:17" }, "parameters": { - "id": 18523, + "id": 3619, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18522, + "id": 3618, "mutability": "mutable", "name": "interfaceId", - "nameLocation": "1146:11:73", + "nameLocation": "1186:11:17", "nodeType": "VariableDeclaration", - "scope": 18536, - "src": "1139:18:73", + "scope": 3632, + "src": "1179:18:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22159,10 +23969,10 @@ "typeString": "bytes4" }, "typeName": { - "id": 18521, + "id": 3617, "name": "bytes4", "nodeType": "ElementaryTypeName", - "src": "1139:6:73", + "src": "1179:6:17", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" @@ -22171,21 +23981,21 @@ "visibility": "internal" } ], - "src": "1132:30:73" + "src": "1172:30:17" }, "returnParameters": { - "id": 18529, + "id": 3625, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18528, + "id": 3624, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 18536, - "src": "1259:4:73", + "scope": 3632, + "src": "1299:4:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22193,10 +24003,10 @@ "typeString": "bool" }, "typeName": { - "id": 18527, + "id": 3623, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1259:4:73", + "src": "1299:4:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22205,22 +24015,22 @@ "visibility": "internal" } ], - "src": "1258:6:73" + "src": "1298:6:17" }, - "scope": 18743, - "src": "1106:218:73", + "scope": 3930, + "src": "1146:218:17", "stateMutability": "view", "virtual": true, "visibility": "public" }, { "baseFunctions": [ - 5824 + 1641 ], "body": { - "id": 18574, + "id": 3670, "nodeType": "Block", - "src": "1478:154:73", + "src": "1518:154:17", "statements": [ { "expression": { @@ -22230,7 +24040,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 18561, + "id": 3657, "isConstant": false, "isLValue": false, "isPure": false, @@ -22240,18 +24050,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18554, + "id": 3650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 18549, + "id": 3645, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18538, - "src": "1493:4:73", + "referencedDeclaration": 3634, + "src": "1533:4:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22263,14 +24073,14 @@ "arguments": [ { "hexValue": "30", - "id": 18552, + "id": 3648, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1509:1:73", + "src": "1549:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -22285,26 +24095,26 @@ "typeString": "int_const 0" } ], - "id": 18551, + "id": 3647, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1501:7:73", + "src": "1541:7:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 18550, + "id": 3646, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1501:7:73", + "src": "1541:7:17", "typeDescriptions": {} } }, - "id": 18553, + "id": 3649, "isConstant": false, "isLValue": false, "isPure": true, @@ -22312,14 +24122,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1501:10:73", + "src": "1541:10:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1493:18:73", + "src": "1533:18:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22332,18 +24142,18 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18560, + "id": 3656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 18555, + "id": 3651, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18540, - "src": "1515:2:73", + "referencedDeclaration": 3636, + "src": "1555:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22355,14 +24165,14 @@ "arguments": [ { "hexValue": "30", - "id": 18558, + "id": 3654, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1529:1:73", + "src": "1569:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" @@ -22377,26 +24187,26 @@ "typeString": "int_const 0" } ], - "id": 18557, + "id": 3653, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "1521:7:73", + "src": "1561:7:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 18556, + "id": 3652, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1521:7:73", + "src": "1561:7:17", "typeDescriptions": {} } }, - "id": 18559, + "id": 3655, "isConstant": false, "isLValue": false, "isPure": true, @@ -22404,20 +24214,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1521:10:73", + "src": "1561:10:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1515:16:73", + "src": "1555:16:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1493:38:73", + "src": "1533:38:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22425,14 +24235,14 @@ }, { "hexValue": "546f6b656e206e6f74207472616e7366657261626c65", - "id": 18562, + "id": 3658, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1533:24:73", + "src": "1573:24:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_59a1b9ae0c32ca530762c8a17f3a01f674ee00263439ad1ca86e8eef1f0b65d6", "typeString": "literal_string \"Token not transferable\"" @@ -22451,7 +24261,7 @@ "typeString": "literal_string \"Token not transferable\"" } ], - "id": 18548, + "id": 3644, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -22459,13 +24269,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "1485:7:73", + "src": "1525:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 18563, + "id": 3659, "isConstant": false, "isLValue": false, "isPure": false, @@ -22473,63 +24283,63 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1485:73:73", + "src": "1525:73:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18564, + "id": 3660, "nodeType": "ExpressionStatement", - "src": "1485:73:73" + "src": "1525:73:17" }, { "expression": { "arguments": [ { - "id": 18568, + "id": 3664, "name": "from", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18538, - "src": "1592:4:73", + "referencedDeclaration": 3634, + "src": "1632:4:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 18569, + "id": 3665, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18540, - "src": "1598:2:73", + "referencedDeclaration": 3636, + "src": "1638:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 18570, + "id": 3666, "name": "firstTokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18542, - "src": "1602:12:73", + "referencedDeclaration": 3638, + "src": "1642:12:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 18571, + "id": 3667, "name": "batchSize", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18544, - "src": "1616:9:73", + "referencedDeclaration": 3640, + "src": "1656:9:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22556,32 +24366,32 @@ } ], "expression": { - "id": 18565, + "id": 3661, "name": "super", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967271, - "src": "1565:5:73", + "src": "1605:5:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_NFTSbt_$18743_$", + "typeIdentifier": "t_type$_t_super$_NFTSbt_$3930_$", "typeString": "type(contract super NFTSbt)" } }, - "id": 18567, + "id": 3663, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "_beforeTokenTransfer", "nodeType": "MemberAccess", - "referencedDeclaration": 5824, - "src": "1565:26:73", + "referencedDeclaration": 1641, + "src": "1605:26:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 18572, + "id": 3668, "isConstant": false, "isLValue": false, "isPure": false, @@ -22589,45 +24399,45 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1565:61:73", + "src": "1605:61:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18573, + "id": 3669, "nodeType": "ExpressionStatement", - "src": "1565:61:73" + "src": "1605:61:17" } ] }, - "id": 18575, + "id": 3671, "implemented": true, "kind": "function", "modifiers": [], "name": "_beforeTokenTransfer", - "nameLocation": "1339:20:73", + "nameLocation": "1379:20:17", "nodeType": "FunctionDefinition", "overrides": { - "id": 18546, + "id": 3642, "nodeType": "OverrideSpecifier", "overrides": [], - "src": "1469:8:73" + "src": "1509:8:17" }, "parameters": { - "id": 18545, + "id": 3641, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18538, + "id": 3634, "mutability": "mutable", "name": "from", - "nameLocation": "1374:4:73", + "nameLocation": "1414:4:17", "nodeType": "VariableDeclaration", - "scope": 18575, - "src": "1366:12:73", + "scope": 3671, + "src": "1406:12:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22635,10 +24445,10 @@ "typeString": "address" }, "typeName": { - "id": 18537, + "id": 3633, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1366:7:73", + "src": "1406:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22649,13 +24459,13 @@ }, { "constant": false, - "id": 18540, + "id": 3636, "mutability": "mutable", "name": "to", - "nameLocation": "1393:2:73", + "nameLocation": "1433:2:17", "nodeType": "VariableDeclaration", - "scope": 18575, - "src": "1385:10:73", + "scope": 3671, + "src": "1425:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22663,10 +24473,10 @@ "typeString": "address" }, "typeName": { - "id": 18539, + "id": 3635, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1385:7:73", + "src": "1425:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22677,13 +24487,13 @@ }, { "constant": false, - "id": 18542, + "id": 3638, "mutability": "mutable", "name": "firstTokenId", - "nameLocation": "1410:12:73", + "nameLocation": "1450:12:17", "nodeType": "VariableDeclaration", - "scope": 18575, - "src": "1402:20:73", + "scope": 3671, + "src": "1442:20:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22691,10 +24501,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18541, + "id": 3637, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1402:7:73", + "src": "1442:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22704,13 +24514,13 @@ }, { "constant": false, - "id": 18544, + "id": 3640, "mutability": "mutable", "name": "batchSize", - "nameLocation": "1437:9:73", + "nameLocation": "1477:9:17", "nodeType": "VariableDeclaration", - "scope": 18575, - "src": "1429:17:73", + "scope": 3671, + "src": "1469:17:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22718,10 +24528,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18543, + "id": 3639, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1429:7:73", + "src": "1469:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22730,40 +24540,40 @@ "visibility": "internal" } ], - "src": "1359:92:73" + "src": "1399:92:17" }, "returnParameters": { - "id": 18547, + "id": 3643, "nodeType": "ParameterList", "parameters": [], - "src": "1478:0:73" + "src": "1518:0:17" }, - "scope": 18743, - "src": "1330:302:73", + "scope": 3930, + "src": "1370:302:17", "stateMutability": "nonpayable", "virtual": true, "visibility": "internal" }, { "body": { - "id": 18588, + "id": 3684, "nodeType": "Block", - "src": "1773:39:73", + "src": "1813:39:17", "statements": [ { "expression": { - "id": 18586, + "id": 3682, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { - "id": 18584, + "id": 3680, "name": "_metaAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18458, - "src": "1780:12:73", + "referencedDeclaration": 3551, + "src": "1820:12:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22772,84 +24582,84 @@ "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "id": 18585, + "id": 3681, "name": "metaAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18578, - "src": "1795:11:73", + "referencedDeclaration": 3674, + "src": "1835:11:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "1780:26:73", + "src": "1820:26:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 18587, + "id": 3683, "nodeType": "ExpressionStatement", - "src": "1780:26:73" + "src": "1820:26:17" } ] }, "documentation": { - "id": 18576, + "id": 3672, "nodeType": "StructuredDocumentation", - "src": "1638:35:73", + "src": "1678:35:17", "text": " @dev Set token URI" }, "functionSelector": "b6a6a93d", - "id": 18589, + "id": 3685, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 18581, + "id": 3677, "name": "DEFAULT_ADMIN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 27, - "src": "1753:18:73", + "src": "1793:18:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 18582, + "id": 3678, "kind": "modifierInvocation", "modifierName": { - "id": 18580, + "id": 3676, "name": "onlyRole", "nodeType": "IdentifierPath", "referencedDeclaration": 38, - "src": "1744:8:73" + "src": "1784:8:17" }, "nodeType": "ModifierInvocation", - "src": "1744:28:73" + "src": "1784:28:17" } ], "name": "updateMetaAddress", - "nameLocation": "1686:17:73", + "nameLocation": "1726:17:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18579, + "id": 3675, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18578, + "id": 3674, "mutability": "mutable", "name": "metaAddress", - "nameLocation": "1718:11:73", + "nameLocation": "1758:11:17", "nodeType": "VariableDeclaration", - "scope": 18589, - "src": "1710:19:73", + "scope": 3685, + "src": "1750:19:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22857,10 +24667,10 @@ "typeString": "address" }, "typeName": { - "id": 18577, + "id": 3673, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1710:7:73", + "src": "1750:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -22870,28 +24680,28 @@ "visibility": "internal" } ], - "src": "1703:31:73" + "src": "1743:31:17" }, "returnParameters": { - "id": 18583, + "id": 3679, "nodeType": "ParameterList", "parameters": [], - "src": "1773:0:73" + "src": "1813:0:17" }, - "scope": 18743, - "src": "1677:135:73", + "scope": 3930, + "src": "1717:135:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "baseFunctions": [ - 4776 + 593 ], "body": { - "id": 18616, + "id": 3712, "nodeType": "Block", - "src": "1966:146:73", + "src": "2006:146:17", "statements": [ { "expression": { @@ -22899,12 +24709,12 @@ { "arguments": [ { - "id": 18600, + "id": 3696, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18592, - "src": "1989:7:73", + "referencedDeclaration": 3688, + "src": "2029:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22918,18 +24728,18 @@ "typeString": "uint256" } ], - "id": 18599, + "id": 3695, "name": "_exists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5017, - "src": "1981:7:73", + "referencedDeclaration": 834, + "src": "2021:7:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 18601, + "id": 3697, "isConstant": false, "isLValue": false, "isPure": false, @@ -22937,7 +24747,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1981:16:73", + "src": "2021:16:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -22946,14 +24756,14 @@ }, { "hexValue": "55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 18602, + "id": 3698, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "1999:33:73", + "src": "2039:33:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_1cdec463df0fbdce13585c1435e3c4772f0033ebb8a813b127e59d923b0c9730", "typeString": "literal_string \"URI query for nonexistent token\"" @@ -22972,7 +24782,7 @@ "typeString": "literal_string \"URI query for nonexistent token\"" } ], - "id": 18598, + "id": 3694, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -22980,13 +24790,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "1973:7:73", + "src": "2013:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 18603, + "id": 3699, "isConstant": false, "isLValue": false, "isPure": false, @@ -22994,16 +24804,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1973:60:73", + "src": "2013:60:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18604, + "id": 3700, "nodeType": "ExpressionStatement", - "src": "1973:60:73" + "src": "2013:60:17" }, { "expression": { @@ -23011,14 +24821,14 @@ { "arguments": [ { - "id": 18611, + "id": 3707, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 4294967268, - "src": "2091:4:73", + "src": "2131:4:17", "typeDescriptions": { - "typeIdentifier": "t_contract$_NFTSbt_$18743", + "typeIdentifier": "t_contract$_NFTSbt_$3930", "typeString": "contract NFTSbt" } } @@ -23026,30 +24836,30 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_NFTSbt_$18743", + "typeIdentifier": "t_contract$_NFTSbt_$3930", "typeString": "contract NFTSbt" } ], - "id": 18610, + "id": 3706, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "2083:7:73", + "src": "2123:7:17", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { - "id": 18609, + "id": 3705, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2083:7:73", + "src": "2123:7:17", "typeDescriptions": {} } }, - "id": 18612, + "id": 3708, "isConstant": false, "isLValue": false, "isPure": false, @@ -23057,7 +24867,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2083:13:73", + "src": "2123:13:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -23065,12 +24875,12 @@ } }, { - "id": 18613, + "id": 3709, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18592, - "src": "2098:7:73", + "referencedDeclaration": 3688, + "src": "2138:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23091,12 +24901,12 @@ "expression": { "arguments": [ { - "id": 18606, + "id": 3702, "name": "_metaAddress", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18458, - "src": "2057:12:73", + "referencedDeclaration": 3551, + "src": "2097:12:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23110,18 +24920,18 @@ "typeString": "address" } ], - "id": 18605, + "id": 3701, "name": "IMetaData", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 10588, - "src": "2047:9:73", + "referencedDeclaration": 3535, + "src": "2087:9:17", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IMetaData_$10588_$", + "typeIdentifier": "t_type$_t_contract$_IMetaData_$3535_$", "typeString": "type(contract IMetaData)" } }, - "id": 18607, + "id": 3703, "isConstant": false, "isLValue": false, "isPure": false, @@ -23129,28 +24939,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2047:23:73", + "src": "2087:23:17", "tryCall": false, "typeDescriptions": { - "typeIdentifier": "t_contract$_IMetaData_$10588", + "typeIdentifier": "t_contract$_IMetaData_$3535", "typeString": "contract IMetaData" } }, - "id": 18608, + "id": 3704, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getMetaData", "nodeType": "MemberAccess", - "referencedDeclaration": 10587, - "src": "2047:35:73", + "referencedDeclaration": 3534, + "src": "2087:35:17", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$returns$_t_string_memory_ptr_$", "typeString": "function (address,uint256) view external returns (string memory)" } }, - "id": 18614, + "id": 3710, "isConstant": false, "isLValue": false, "isPure": false, @@ -23158,53 +24968,53 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2047:59:73", + "src": "2087:59:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "functionReturnParameters": 18597, - "id": 18615, + "functionReturnParameters": 3693, + "id": 3711, "nodeType": "Return", - "src": "2040:66:73" + "src": "2080:66:17" } ] }, "documentation": { - "id": 18590, + "id": 3686, "nodeType": "StructuredDocumentation", - "src": "1818:54:73", + "src": "1858:54:17", "text": " @dev one type badge has same tokenURI" }, "functionSelector": "c87b56dd", - "id": 18617, + "id": 3713, "implemented": true, "kind": "function", "modifiers": [], "name": "tokenURI", - "nameLocation": "1885:8:73", + "nameLocation": "1925:8:17", "nodeType": "FunctionDefinition", "overrides": { - "id": 18594, + "id": 3690, "nodeType": "OverrideSpecifier", "overrides": [], - "src": "1933:8:73" + "src": "1973:8:17" }, "parameters": { - "id": 18593, + "id": 3689, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18592, + "id": 3688, "mutability": "mutable", "name": "tokenId", - "nameLocation": "1908:7:73", + "nameLocation": "1948:7:17", "nodeType": "VariableDeclaration", - "scope": 18617, - "src": "1900:15:73", + "scope": 3713, + "src": "1940:15:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23212,10 +25022,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18591, + "id": 3687, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1900:7:73", + "src": "1940:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23224,21 +25034,21 @@ "visibility": "internal" } ], - "src": "1893:27:73" + "src": "1933:27:17" }, "returnParameters": { - "id": 18597, + "id": 3693, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18596, + "id": 3692, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 18617, - "src": "1951:13:73", + "scope": 3713, + "src": "1991:13:17", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -23246,10 +25056,10 @@ "typeString": "string" }, "typeName": { - "id": 18595, + "id": 3691, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1951:6:73", + "src": "1991:6:17", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23258,128 +25068,84 @@ "visibility": "internal" } ], - "src": "1950:15:73" + "src": "1990:15:17" }, - "scope": 18743, - "src": "1876:236:73", + "scope": 3930, + "src": "1916:236:17", "stateMutability": "view", "virtual": false, "visibility": "public" }, { "body": { - "id": 18671, + "id": 3803, "nodeType": "Block", - "src": "2193:317:73", + "src": "2277:532:17", "statements": [ { "expression": { "arguments": [ { "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 18633, + "id": 3729, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 18628, - "name": "to", + "id": 3727, + "name": "count", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18619, - "src": "2208:2:73", + "referencedDeclaration": 3717, + "src": "2292:5:17", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "!=", + "operator": ">", "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 18631, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2222:1:73", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - } - ], - "id": 18630, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2214:7:73", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 18629, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2214:7:73", - "typeDescriptions": {} - } - }, - "id": 18632, + "hexValue": "30", + "id": 3728, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "typeConversion", + "kind": "number", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2214:10:73", - "tryCall": false, + "nodeType": "Literal", + "src": "2300:1:17", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" }, - "src": "2208:16:73", + "src": "2292:9:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { - "hexValue": "43616e6e6f74206d696e7420746f207a65726f2061646472657373", - "id": 18634, + "hexValue": "746f6b656e49647320746f6f20736d616c6c", + "id": 3730, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2226:29:73", + "src": "2303:20:17", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", - "typeString": "literal_string \"Cannot mint to zero address\"" + "typeIdentifier": "t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a", + "typeString": "literal_string \"tokenIds too small\"" }, - "value": "Cannot mint to zero address" + "value": "tokenIds too small" } ], "expression": { @@ -23389,11 +25155,11 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", - "typeString": "literal_string \"Cannot mint to zero address\"" + "typeIdentifier": "t_stringliteral_1c49d91ddef9b1e728d97a857146ccbd5a386c424bd9b4f24f2be695bf1b985a", + "typeString": "literal_string \"tokenIds too small\"" } ], - "id": 18627, + "id": 3726, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23401,13 +25167,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "2200:7:73", + "src": "2284:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 18635, + "id": 3731, "isConstant": false, "isLValue": false, "isPure": false, @@ -23415,16 +25181,122 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2200:56:73", + "src": "2284:40:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18636, + "id": 3732, "nodeType": "ExpressionStatement", - "src": "2200:56:73" + "src": "2284:40:17" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3734, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3717, + "src": "2339:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 3735, + "name": "maxBatchSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3569, + "src": "2348:12:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2339:21:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "746f6b656e49647320746f6f206d616e79", + "id": 3737, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2362:19:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef", + "typeString": "literal_string \"tokenIds too many\"" + }, + "value": "tokenIds too many" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_04bfe1e76fdc0dd8a7d8ff5123d4d867e22f16ad85a91f714908fd44600dcbef", + "typeString": "literal_string \"tokenIds too many\"" + } + ], + "id": 3733, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "2331:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2331:51:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3739, + "nodeType": "ExpressionStatement", + "src": "2331:51:17" }, { "condition": { @@ -23432,18 +25304,18 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 18639, + "id": 3742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "id": 18637, + "id": 3740, "name": "supplyLimit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18470, - "src": "2267:11:73", + "referencedDeclaration": 3563, + "src": "2393:11:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23453,33 +25325,33 @@ "operator": ">", "rightExpression": { "hexValue": "30", - "id": 18638, + "id": 3741, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2281:1:73", + "src": "2407:1:17", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, - "src": "2267:15:73", + "src": "2393:15:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 18652, + "id": 3755, "nodeType": "IfStatement", - "src": "2263:108:73", + "src": "2389:139:17", "trueBody": { - "id": 18651, + "id": 3754, "nodeType": "Block", - "src": "2284:87:73", + "src": "2410:118:17", "statements": [ { "expression": { @@ -23489,7 +25361,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 18647, + "id": 3750, "isConstant": false, "isLValue": false, "isPure": false, @@ -23501,7 +25373,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 18644, + "id": 3747, "isConstant": false, "isLValue": false, "isPure": false, @@ -23510,18 +25382,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 18641, + "id": 3744, "name": "totalSupply", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5721, - "src": "2302:11:73", + "referencedDeclaration": 1538, + "src": "2438:11:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 18642, + "id": 3745, "isConstant": false, "isLValue": false, "isPure": false, @@ -23529,7 +25401,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2302:13:73", + "src": "2438:13:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23539,36 +25411,32 @@ "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { - "hexValue": "31", - "id": 18643, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2318:1:73", + "id": 3746, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3717, + "src": "2454:5:17", "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "src": "2302:17:73", + "src": "2438:21:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 18645, + "id": 3748, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "2301:19:73", + "src": "2437:23:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23577,18 +25445,18 @@ "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { - "id": 18646, + "id": 3749, "name": "supplyLimit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18470, - "src": "2324:11:73", + "referencedDeclaration": 3563, + "src": "2464:11:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2301:34:73", + "src": "2437:38:17", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23596,14 +25464,14 @@ }, { "hexValue": "4578636565642074686520746f74616c20737570706c79", - "id": 18648, + "id": 3751, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2337:25:73", + "src": "2486:25:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1", "typeString": "literal_string \"Exceed the total supply\"" @@ -23622,7 +25490,7 @@ "typeString": "literal_string \"Exceed the total supply\"" } ], - "id": 18640, + "id": 3743, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -23630,13 +25498,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "2293:7:73", + "src": "2419:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 18649, + "id": 3752, "isConstant": false, "isLValue": false, "isPure": false, @@ -23644,16 +25512,1100 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2293:70:73", + "src": "2419:101:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18650, + "id": 3753, "nodeType": "ExpressionStatement", - "src": "2293:70:73" + "src": "2419:101:17" + } + ] + } + }, + { + "assignments": [ + 3760 + ], + "declarations": [ + { + "constant": false, + "id": 3760, + "mutability": "mutable", + "name": "tokenIds", + "nameLocation": "2551:8:17", + "nodeType": "VariableDeclaration", + "scope": 3803, + "src": "2534:25:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 3758, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2534:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3759, + "nodeType": "ArrayTypeName", + "src": "2534:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "id": 3766, + "initialValue": { + "arguments": [ + { + "id": 3764, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3717, + "src": "2576:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2562:13:17", + "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": 3761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2566:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3762, + "nodeType": "ArrayTypeName", + "src": "2566:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + } + }, + "id": 3765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2562:20:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2534:48:17" + }, + { + "body": { + "id": 3799, + "nodeType": "Block", + "src": "2625:157:17", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3777, + "name": "_tokenIdCounter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3566, + "src": "2634:15:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Counter_$2219_storage", + "typeString": "struct Counters.Counter storage ref" + } + }, + "id": 3779, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "increment", + "nodeType": "MemberAccess", + "referencedDeclaration": 2245, + "src": "2634:25:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Counter_$2219_storage_ptr_$returns$__$bound_to$_t_struct$_Counter_$2219_storage_ptr_$", + "typeString": "function (struct Counters.Counter storage pointer)" + } + }, + "id": 3780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2634:27:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3781, + "nodeType": "ExpressionStatement", + "src": "2634:27:17" + }, + { + "assignments": [ + 3783 + ], + "declarations": [ + { + "constant": false, + "id": 3783, + "mutability": "mutable", + "name": "tokenId", + "nameLocation": "2678:7:17", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "2670:15:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3782, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2670:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3787, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3784, + "name": "_tokenIdCounter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3566, + "src": "2688:15:17", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Counter_$2219_storage", + "typeString": "struct Counters.Counter storage ref" + } + }, + "id": 3785, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "current", + "nodeType": "MemberAccess", + "referencedDeclaration": 2231, + "src": "2688:23:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_struct$_Counter_$2219_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Counter_$2219_storage_ptr_$", + "typeString": "function (struct Counters.Counter storage pointer) view returns (uint256)" + } + }, + "id": 3786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2688:25:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2670:43:17" + }, + { + "expression": { + "arguments": [ + { + "id": 3789, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3715, + "src": "2732:2:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3790, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3783, + "src": "2736:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3788, + "name": "_safeMint", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 883, + 912 + ], + "referencedDeclaration": 883, + "src": "2722:9:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2722:22:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3792, + "nodeType": "ExpressionStatement", + "src": "2722:22:17" + }, + { + "expression": { + "id": 3797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 3793, + "name": "tokenIds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "2753:8:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "id": 3795, + "indexExpression": { + "id": 3794, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3768, + "src": "2762:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "2753:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3796, + "name": "tokenId", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3783, + "src": "2767:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2753:21:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3798, + "nodeType": "ExpressionStatement", + "src": "2753:21:17" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3771, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3768, + "src": "2609:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 3772, + "name": "count", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3717, + "src": "2613:5:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2609:9:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3800, + "initializationExpression": { + "assignments": [ + 3768 + ], + "declarations": [ + { + "constant": false, + "id": 3768, + "mutability": "mutable", + "name": "i", + "nameLocation": "2602:1:17", + "nodeType": "VariableDeclaration", + "scope": 3800, + "src": "2594:9:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3767, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2594:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3770, + "initialValue": { + "hexValue": "30", + "id": 3769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2606:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2594:13:17" + }, + "loopExpression": { + "expression": { + "id": 3775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2620:3:17", + "subExpression": { + "id": 3774, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3768, + "src": "2620:1:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3776, + "nodeType": "ExpressionStatement", + "src": "2620:3:17" + }, + "nodeType": "ForStatement", + "src": "2589:193:17" + }, + { + "expression": { + "id": 3801, + "name": "tokenIds", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "2795:8:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + "functionReturnParameters": 3725, + "id": 3802, + "nodeType": "Return", + "src": "2788:15:17" + } + ] + }, + "functionSelector": "43508b05", + "id": 3804, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 3720, + "name": "MINTER_ROLE", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3561, + "src": "2237:11:17", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "id": 3721, + "kind": "modifierInvocation", + "modifierName": { + "id": 3719, + "name": "onlyRole", + "nodeType": "IdentifierPath", + "referencedDeclaration": 38, + "src": "2228:8:17" + }, + "nodeType": "ModifierInvocation", + "src": "2228:21:17" + } + ], + "name": "batchMint", + "nameLocation": "2167:9:17", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3718, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3715, + "mutability": "mutable", + "name": "to", + "nameLocation": "2191:2:17", + "nodeType": "VariableDeclaration", + "scope": 3804, + "src": "2183:10:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3714, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2183:7:17", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3717, + "mutability": "mutable", + "name": "count", + "nameLocation": "2208:5:17", + "nodeType": "VariableDeclaration", + "scope": 3804, + "src": "2200:13:17", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3716, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2200:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2176:42:17" + }, + "returnParameters": { + "id": 3725, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3724, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3804, + "src": "2259:16:17", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 3722, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2259:7:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3723, + "nodeType": "ArrayTypeName", + "src": "2259:9:17", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2258:18:17" + }, + "scope": 3930, + "src": "2158:651:17", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 3858, + "nodeType": "Block", + "src": "2890:317:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3815, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3806, + "src": "2905:2:17", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2919:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2911:7:17", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2911:7:17", + "typeDescriptions": {} + } + }, + "id": 3819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2911:10:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "2905:16:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "43616e6e6f74206d696e7420746f207a65726f2061646472657373", + "id": 3821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2923:29:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", + "typeString": "literal_string \"Cannot mint to zero address\"" + }, + "value": "Cannot mint to zero address" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2ee0416c341986fdecc3cbd81cd5d77b44e6537a4f9aa8afff73aa35a7384cb9", + "typeString": "literal_string \"Cannot mint to zero address\"" + } + ], + "id": 3814, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "2897:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2897:56:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3823, + "nodeType": "ExpressionStatement", + "src": "2897:56:17" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3824, + "name": "supplyLimit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3563, + "src": "2964:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 3825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2978:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "2964:15:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3839, + "nodeType": "IfStatement", + "src": "2960:108:17", + "trueBody": { + "id": 3838, + "nodeType": "Block", + "src": "2981:87:17", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 3828, + "name": "totalSupply", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1538, + "src": "2999:11:17", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 3829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2999:13:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 3830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3015:1:17", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2999:17:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3832, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2998:19:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 3833, + "name": "supplyLimit", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3563, + "src": "3021:11:17", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2998:34:17", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4578636565642074686520746f74616c20737570706c79", + "id": 3835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3034:25:17", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1", + "typeString": "literal_string \"Exceed the total supply\"" + }, + "value": "Exceed the total supply" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_12d840de55800a407036c108072a110b489a6fba65d56a3541eab87f0f0af5d1", + "typeString": "literal_string \"Exceed the total supply\"" + } + ], + "id": 3827, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "2990:7:17", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3836, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2990:70:17", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3837, + "nodeType": "ExpressionStatement", + "src": "2990:70:17" } ] } @@ -23664,32 +26616,32 @@ "expression": { "argumentTypes": [], "expression": { - "id": 18653, + "id": 3840, "name": "_tokenIdCounter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18473, - "src": "2377:15:73", + "referencedDeclaration": 3566, + "src": "3074:15:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$6476_storage", + "typeIdentifier": "t_struct$_Counter_$2219_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 18655, + "id": 3842, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "increment", "nodeType": "MemberAccess", - "referencedDeclaration": 6502, - "src": "2377:25:73", + "referencedDeclaration": 2245, + "src": "3074:25:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Counter_$6476_storage_ptr_$returns$__$bound_to$_t_struct$_Counter_$6476_storage_ptr_$", + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Counter_$2219_storage_ptr_$returns$__$bound_to$_t_struct$_Counter_$2219_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer)" } }, - "id": 18656, + "id": 3843, "isConstant": false, "isLValue": false, "isPure": false, @@ -23697,31 +26649,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2377:27:73", + "src": "3074:27:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18657, + "id": 3844, "nodeType": "ExpressionStatement", - "src": "2377:27:73" + "src": "3074:27:17" }, { "assignments": [ - 18659 + 3846 ], "declarations": [ { "constant": false, - "id": 18659, + "id": 3846, "mutability": "mutable", "name": "tokenId", - "nameLocation": "2419:7:73", + "nameLocation": "3116:7:17", "nodeType": "VariableDeclaration", - "scope": 18671, - "src": "2411:15:73", + "scope": 3858, + "src": "3108:15:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23729,10 +26681,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18658, + "id": 3845, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2411:7:73", + "src": "3108:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23741,38 +26693,38 @@ "visibility": "internal" } ], - "id": 18663, + "id": 3850, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 18660, + "id": 3847, "name": "_tokenIdCounter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18473, - "src": "2429:15:73", + "referencedDeclaration": 3566, + "src": "3126:15:17", "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$6476_storage", + "typeIdentifier": "t_struct$_Counter_$2219_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 18661, + "id": 3848, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "current", "nodeType": "MemberAccess", - "referencedDeclaration": 6488, - "src": "2429:23:73", + "referencedDeclaration": 2231, + "src": "3126:23:17", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Counter_$6476_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Counter_$6476_storage_ptr_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Counter_$2219_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Counter_$2219_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer) view returns (uint256)" } }, - "id": 18662, + "id": 3849, "isConstant": false, "isLValue": false, "isPure": false, @@ -23780,7 +26732,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2429:25:73", + "src": "3126:25:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -23788,30 +26740,30 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "2411:43:73" + "src": "3108:43:17" }, { "expression": { "arguments": [ { - "id": 18665, + "id": 3852, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18619, - "src": "2471:2:73", + "referencedDeclaration": 3806, + "src": "3168:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 18666, + "id": 3853, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18659, - "src": "2475:7:73", + "referencedDeclaration": 3846, + "src": "3172:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23829,21 +26781,21 @@ "typeString": "uint256" } ], - "id": 18664, + "id": 3851, "name": "_safeMint", "nodeType": "Identifier", "overloadedDeclarations": [ - 5066, - 5095 + 883, + 912 ], - "referencedDeclaration": 5066, - "src": "2461:9:73", + "referencedDeclaration": 883, + "src": "3158:9:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 18667, + "id": 3854, "isConstant": false, "isLValue": false, "isPure": false, @@ -23851,86 +26803,86 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2461:22:73", + "src": "3158:22:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18668, + "id": 3855, "nodeType": "ExpressionStatement", - "src": "2461:22:73" + "src": "3158:22:17" }, { "expression": { - "id": 18669, + "id": 3856, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18659, - "src": "2497:7:73", + "referencedDeclaration": 3846, + "src": "3194:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 18626, - "id": 18670, + "functionReturnParameters": 3813, + "id": 3857, "nodeType": "Return", - "src": "2490:14:73" + "src": "3187:14:17" } ] }, "functionSelector": "6a627842", - "id": 18672, + "id": 3859, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 18622, + "id": 3809, "name": "MINTER_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18468, - "src": "2162:11:73", + "referencedDeclaration": 3561, + "src": "2859:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 18623, + "id": 3810, "kind": "modifierInvocation", "modifierName": { - "id": 18621, + "id": 3808, "name": "onlyRole", "nodeType": "IdentifierPath", "referencedDeclaration": 38, - "src": "2153:8:73" + "src": "2850:8:17" }, "nodeType": "ModifierInvocation", - "src": "2153:21:73" + "src": "2850:21:17" } ], "name": "mint", - "nameLocation": "2127:4:73", + "nameLocation": "2824:4:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18620, + "id": 3807, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18619, + "id": 3806, "mutability": "mutable", "name": "to", - "nameLocation": "2140:2:73", + "nameLocation": "2837:2:17", "nodeType": "VariableDeclaration", - "scope": 18672, - "src": "2132:10:73", + "scope": 3859, + "src": "2829:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23938,10 +26890,10 @@ "typeString": "address" }, "typeName": { - "id": 18618, + "id": 3805, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2132:7:73", + "src": "2829:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -23951,21 +26903,21 @@ "visibility": "internal" } ], - "src": "2131:12:73" + "src": "2828:12:17" }, "returnParameters": { - "id": 18626, + "id": 3813, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18625, + "id": 3812, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 18672, - "src": "2184:7:73", + "scope": 3859, + "src": "2881:7:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23973,10 +26925,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18624, + "id": 3811, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2184:7:73", + "src": "2881:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23985,19 +26937,19 @@ "visibility": "internal" } ], - "src": "2183:9:73" + "src": "2880:9:17" }, - "scope": 18743, - "src": "2118:392:73", + "scope": 3930, + "src": "2815:392:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 18693, + "id": 3880, "nodeType": "Block", - "src": "2576:141:73", + "src": "3273:141:17", "statements": [ { "expression": { @@ -24008,18 +26960,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 18682, + "id": 3869, "name": "_msgSender", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 6460, - "src": "2618:10:73", + "referencedDeclaration": 2203, + "src": "3315:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", "typeString": "function () view returns (address)" } }, - "id": 18683, + "id": 3870, "isConstant": false, "isLValue": false, "isPure": false, @@ -24027,7 +26979,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2618:12:73", + "src": "3315:12:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", @@ -24035,12 +26987,12 @@ } }, { - "id": 18684, + "id": 3871, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18674, - "src": "2632:7:73", + "referencedDeclaration": 3861, + "src": "3329:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24058,18 +27010,18 @@ "typeString": "uint256" } ], - "id": 18681, + "id": 3868, "name": "_isApprovedOrOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5051, - "src": "2599:18:73", + "referencedDeclaration": 868, + "src": "3296:18:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) view returns (bool)" } }, - "id": 18685, + "id": 3872, "isConstant": false, "isLValue": false, "isPure": false, @@ -24077,7 +27029,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2599:41:73", + "src": "3296:41:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24086,14 +27038,14 @@ }, { "hexValue": "43616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", - "id": 18686, + "id": 3873, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "2649:34:73", + "src": "3346:34:17", "typeDescriptions": { "typeIdentifier": "t_stringliteral_c52d8a267cca22510f5a5b23cfd13135d738a215ab145957a8742a2248da059d", "typeString": "literal_string \"Caller is not owner nor approved\"" @@ -24112,7 +27064,7 @@ "typeString": "literal_string \"Caller is not owner nor approved\"" } ], - "id": 18680, + "id": 3867, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ @@ -24120,13 +27072,13 @@ 4294967278 ], "referencedDeclaration": 4294967278, - "src": "2583:7:73", + "src": "3280:7:17", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 18687, + "id": 3874, "isConstant": false, "isLValue": false, "isPure": false, @@ -24134,27 +27086,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2583:107:73", + "src": "3280:107:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18688, + "id": 3875, "nodeType": "ExpressionStatement", - "src": "2583:107:73" + "src": "3280:107:17" }, { "expression": { "arguments": [ { - "id": 18690, + "id": 3877, "name": "tokenId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18674, - "src": "2703:7:73", + "referencedDeclaration": 3861, + "src": "3400:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24168,18 +27120,18 @@ "typeString": "uint256" } ], - "id": 18689, + "id": 3876, "name": "_burn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 5239, - "src": "2697:5:73", + "referencedDeclaration": 1056, + "src": "3394:5:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 18691, + "id": 3878, "isConstant": false, "isLValue": false, "isPure": false, @@ -24187,68 +27139,68 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2697:14:73", + "src": "3394:14:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18692, + "id": 3879, "nodeType": "ExpressionStatement", - "src": "2697:14:73" + "src": "3394:14:17" } ] }, "functionSelector": "42966c68", - "id": 18694, + "id": 3881, "implemented": true, "kind": "function", "modifiers": [ { "arguments": [ { - "id": 18677, + "id": 3864, "name": "BURN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18463, - "src": "2565:9:73", + "referencedDeclaration": 3556, + "src": "3262:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], - "id": 18678, + "id": 3865, "kind": "modifierInvocation", "modifierName": { - "id": 18676, + "id": 3863, "name": "onlyRole", "nodeType": "IdentifierPath", "referencedDeclaration": 38, - "src": "2556:8:73" + "src": "3253:8:17" }, "nodeType": "ModifierInvocation", - "src": "2556:19:73" + "src": "3253:19:17" } ], "name": "burn", - "nameLocation": "2525:4:73", + "nameLocation": "3222:4:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18675, + "id": 3862, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18674, + "id": 3861, "mutability": "mutable", "name": "tokenId", - "nameLocation": "2538:7:73", + "nameLocation": "3235:7:17", "nodeType": "VariableDeclaration", - "scope": 18694, - "src": "2530:15:73", + "scope": 3881, + "src": "3227:15:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24256,10 +27208,10 @@ "typeString": "uint256" }, "typeName": { - "id": 18673, + "id": 3860, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2530:7:73", + "src": "3227:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24268,48 +27220,48 @@ "visibility": "internal" } ], - "src": "2529:17:73" + "src": "3226:17:17" }, "returnParameters": { - "id": 18679, + "id": 3866, "nodeType": "ParameterList", "parameters": [], - "src": "2576:0:73" + "src": "3273:0:17" }, - "scope": 18743, - "src": "2516:201:73", + "scope": 3930, + "src": "3213:201:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 18705, + "id": 3892, "nodeType": "Block", - "src": "2817:39:73", + "src": "3514:39:17", "statements": [ { "expression": { "arguments": [ { - "id": 18701, + "id": 3888, "name": "MINTER_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18468, - "src": "2834:11:73", + "referencedDeclaration": 3561, + "src": "3531:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18702, + "id": 3889, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18697, - "src": "2847:2:73", + "referencedDeclaration": 3884, + "src": "3544:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24327,18 +27279,18 @@ "typeString": "address" } ], - "id": 18700, + "id": 3887, "name": "grantRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 166, - "src": "2824:9:73", + "src": "3521:9:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18703, + "id": 3890, "isConstant": false, "isLValue": false, "isPure": false, @@ -24346,46 +27298,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2824:26:73", + "src": "3521:26:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18704, + "id": 3891, "nodeType": "ExpressionStatement", - "src": "2824:26:73" + "src": "3521:26:17" } ] }, "documentation": { - "id": 18695, + "id": 3882, "nodeType": "StructuredDocumentation", - "src": "2723:48:73", + "src": "3420:48:17", "text": " @dev Grant mint role to address" }, "functionSelector": "530dd079", - "id": 18706, + "id": 3893, "implemented": true, "kind": "function", "modifiers": [], "name": "setMintRole", - "nameLocation": "2784:11:73", + "nameLocation": "3481:11:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18698, + "id": 3885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18697, + "id": 3884, "mutability": "mutable", "name": "to", - "nameLocation": "2804:2:73", + "nameLocation": "3501:2:17", "nodeType": "VariableDeclaration", - "scope": 18706, - "src": "2796:10:73", + "scope": 3893, + "src": "3493:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24393,10 +27345,10 @@ "typeString": "address" }, "typeName": { - "id": 18696, + "id": 3883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2796:7:73", + "src": "3493:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -24406,48 +27358,48 @@ "visibility": "internal" } ], - "src": "2795:12:73" + "src": "3492:12:17" }, "returnParameters": { - "id": 18699, + "id": 3886, "nodeType": "ParameterList", "parameters": [], - "src": "2817:0:73" + "src": "3514:0:17" }, - "scope": 18743, - "src": "2775:81:73", + "scope": 3930, + "src": "3472:81:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 18717, + "id": 3904, "nodeType": "Block", - "src": "2960:40:73", + "src": "3657:40:17", "statements": [ { "expression": { "arguments": [ { - "id": 18713, + "id": 3900, "name": "MINTER_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18468, - "src": "2978:11:73", + "referencedDeclaration": 3561, + "src": "3675:11:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18714, + "id": 3901, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18709, - "src": "2991:2:73", + "referencedDeclaration": 3896, + "src": "3688:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24465,18 +27417,18 @@ "typeString": "address" } ], - "id": 18712, + "id": 3899, "name": "revokeRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 186, - "src": "2967:10:73", + "src": "3664:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18715, + "id": 3902, "isConstant": false, "isLValue": false, "isPure": false, @@ -24484,46 +27436,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2967:27:73", + "src": "3664:27:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18716, + "id": 3903, "nodeType": "ExpressionStatement", - "src": "2967:27:73" + "src": "3664:27:17" } ] }, "documentation": { - "id": 18707, + "id": 3894, "nodeType": "StructuredDocumentation", - "src": "2862:49:73", + "src": "3559:49:17", "text": " @dev Remove mint role to address" }, "functionSelector": "1cf4e3ee", - "id": 18718, + "id": 3905, "implemented": true, "kind": "function", "modifiers": [], "name": "removeMintRole", - "nameLocation": "2924:14:73", + "nameLocation": "3621:14:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18710, + "id": 3897, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18709, + "id": 3896, "mutability": "mutable", "name": "to", - "nameLocation": "2947:2:73", + "nameLocation": "3644:2:17", "nodeType": "VariableDeclaration", - "scope": 18718, - "src": "2939:10:73", + "scope": 3905, + "src": "3636:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24531,10 +27483,10 @@ "typeString": "address" }, "typeName": { - "id": 18708, + "id": 3895, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2939:7:73", + "src": "3636:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -24544,48 +27496,48 @@ "visibility": "internal" } ], - "src": "2938:12:73" + "src": "3635:12:17" }, "returnParameters": { - "id": 18711, + "id": 3898, "nodeType": "ParameterList", "parameters": [], - "src": "2960:0:73" + "src": "3657:0:17" }, - "scope": 18743, - "src": "2915:85:73", + "scope": 3930, + "src": "3612:85:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 18729, + "id": 3916, "nodeType": "Block", - "src": "3100:37:73", + "src": "3797:37:17", "statements": [ { "expression": { "arguments": [ { - "id": 18725, + "id": 3912, "name": "BURN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18463, - "src": "3117:9:73", + "referencedDeclaration": 3556, + "src": "3814:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18726, + "id": 3913, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18721, - "src": "3128:2:73", + "referencedDeclaration": 3908, + "src": "3825:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24603,18 +27555,18 @@ "typeString": "address" } ], - "id": 18724, + "id": 3911, "name": "grantRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 166, - "src": "3107:9:73", + "src": "3804:9:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18727, + "id": 3914, "isConstant": false, "isLValue": false, "isPure": false, @@ -24622,46 +27574,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3107:24:73", + "src": "3804:24:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18728, + "id": 3915, "nodeType": "ExpressionStatement", - "src": "3107:24:73" + "src": "3804:24:17" } ] }, "documentation": { - "id": 18719, + "id": 3906, "nodeType": "StructuredDocumentation", - "src": "3006:48:73", + "src": "3703:48:17", "text": " @dev Grant burn role to address" }, "functionSelector": "327ba615", - "id": 18730, + "id": 3917, "implemented": true, "kind": "function", "modifiers": [], "name": "setBurnRole", - "nameLocation": "3067:11:73", + "nameLocation": "3764:11:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18722, + "id": 3909, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18721, + "id": 3908, "mutability": "mutable", "name": "to", - "nameLocation": "3087:2:73", + "nameLocation": "3784:2:17", "nodeType": "VariableDeclaration", - "scope": 18730, - "src": "3079:10:73", + "scope": 3917, + "src": "3776:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24669,10 +27621,10 @@ "typeString": "address" }, "typeName": { - "id": 18720, + "id": 3907, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3079:7:73", + "src": "3776:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -24682,48 +27634,48 @@ "visibility": "internal" } ], - "src": "3078:12:73" + "src": "3775:12:17" }, "returnParameters": { - "id": 18723, + "id": 3910, "nodeType": "ParameterList", "parameters": [], - "src": "3100:0:73" + "src": "3797:0:17" }, - "scope": 18743, - "src": "3058:79:73", + "scope": 3930, + "src": "3755:79:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "body": { - "id": 18741, + "id": 3928, "nodeType": "Block", - "src": "3241:38:73", + "src": "3938:38:17", "statements": [ { "expression": { "arguments": [ { - "id": 18737, + "id": 3924, "name": "BURN_ROLE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18463, - "src": "3259:9:73", + "referencedDeclaration": 3556, + "src": "3956:9:17", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { - "id": 18738, + "id": 3925, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 18733, - "src": "3270:2:73", + "referencedDeclaration": 3920, + "src": "3967:2:17", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24741,18 +27693,18 @@ "typeString": "address" } ], - "id": 18736, + "id": 3923, "name": "revokeRole", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 186, - "src": "3248:10:73", + "src": "3945:10:17", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$", "typeString": "function (bytes32,address)" } }, - "id": 18739, + "id": 3926, "isConstant": false, "isLValue": false, "isPure": false, @@ -24760,46 +27712,46 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3248:25:73", + "src": "3945:25:17", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 18740, + "id": 3927, "nodeType": "ExpressionStatement", - "src": "3248:25:73" + "src": "3945:25:17" } ] }, "documentation": { - "id": 18731, + "id": 3918, "nodeType": "StructuredDocumentation", - "src": "3143:49:73", + "src": "3840:49:17", "text": " @dev Remove burn role to address" }, "functionSelector": "965f4c60", - "id": 18742, + "id": 3929, "implemented": true, "kind": "function", "modifiers": [], "name": "removeBurnRole", - "nameLocation": "3205:14:73", + "nameLocation": "3902:14:17", "nodeType": "FunctionDefinition", "parameters": { - "id": 18734, + "id": 3921, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 18733, + "id": 3920, "mutability": "mutable", "name": "to", - "nameLocation": "3228:2:73", + "nameLocation": "3925:2:17", "nodeType": "VariableDeclaration", - "scope": 18742, - "src": "3220:10:73", + "scope": 3929, + "src": "3917:10:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24807,10 +27759,10 @@ "typeString": "address" }, "typeName": { - "id": 18732, + "id": 3919, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3220:7:73", + "src": "3917:7:17", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -24820,27 +27772,27 @@ "visibility": "internal" } ], - "src": "3219:12:73" + "src": "3916:12:17" }, "returnParameters": { - "id": 18735, + "id": 3922, "nodeType": "ParameterList", "parameters": [], - "src": "3241:0:73" + "src": "3938:0:17" }, - "scope": 18743, - "src": "3196:83:73", + "scope": 3930, + "src": "3893:83:17", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" } ], - "scope": 18744, - "src": "298:2984:73", + "scope": 3931, + "src": "298:3681:17", "usedErrors": [] } ], - "src": "33:3251:73" + "src": "33:3948:17" }, "compiler": { "name": "solc", @@ -24848,7 +27800,7 @@ }, "networks": {}, "schemaVersion": "3.4.14", - "updatedAt": "2023-09-05T06:06:16.226Z", + "updatedAt": "2023-11-03T11:11:46.942Z", "devdoc": { "kind": "dev", "methods": { diff --git a/contracts/tokens/erc721/NFTSbt.sol b/contracts/tokens/erc721/NFTSbt.sol index 8c00b2b..fb55f33 100644 --- a/contracts/tokens/erc721/NFTSbt.sol +++ b/contracts/tokens/erc721/NFTSbt.sol @@ -15,6 +15,8 @@ contract NFTSbt is AccessControl, ERC721Enumerable { Counters.Counter private _tokenIdCounter; + uint256 public maxBatchSize = 500; + constructor( string memory _name, string memory _symbol, @@ -73,6 +75,28 @@ contract NFTSbt is AccessControl, ERC721Enumerable { return IMetaData(_metaAddress).getMetaData(address(this), tokenId); } + function batchMint( + address to, + uint256 count + ) external onlyRole(MINTER_ROLE) returns (uint256[] memory) { + require(count > 0, "tokenIds too small"); + require(count <= maxBatchSize, "tokenIds too many"); + if (supplyLimit > 0) { + require( + (totalSupply() + count) <= supplyLimit, + "Exceed the total supply" + ); + } + uint256[] memory tokenIds = new uint256[](count); + for (uint256 i = 0; i < count; i++) { + _tokenIdCounter.increment(); + uint256 tokenId = _tokenIdCounter.current(); + _safeMint(to, tokenId); + tokenIds[i] = tokenId; + } + return tokenIds; + } + function mint(address to) external onlyRole(MINTER_ROLE) returns (uint256) { require(to != address(0), "Cannot mint to zero address"); if (supplyLimit > 0) { diff --git a/init_scripts/generate_candy.js b/init_scripts/generate_candy.js new file mode 100644 index 0000000..1aaca83 --- /dev/null +++ b/init_scripts/generate_candy.js @@ -0,0 +1,29 @@ +const Candy = artifacts.require("tokens/erc721/BEBadge"); + +const base = require("../scripts/base"); + +module.exports = async function main(callback) { + try { + const account = "0x62871e8e348FDC5bE370E92FF8d17cB04A248242"; + // const badgeInstance = await Badge.deployed(); + const network = "arbitrum_one"; + let cfgs = base.loadData({ network }); + const candyInstance = await Candy.at( + cfgs.find((c) => c.name === "Candy").address + ); + + if(candyInstance) + { + console.log('candyInstance:', candyInstance.address) + // await badgeInstance.batchMint(account, 1); + // await candyInstance.setMintRole(account) + console.log(`success add mintrole`); + } + // await badgeInstance.updateBaseURI("https://gateway.pinata.cloud/ipfs/QmRWDE2y8Zw32tQYtwaCT8JtJJVrGnQoNj4AbKyTPF4Atb"); + console.log("update mintrole over!") + callback(0); + } catch (err) { + console.log(err); + callback(1); + } +}; diff --git a/migrations/18_deploy_explorer.js b/migrations/18_deploy_explorer.js new file mode 100644 index 0000000..bea2cda --- /dev/null +++ b/migrations/18_deploy_explorer.js @@ -0,0 +1,92 @@ +const Box = artifacts.require("tokens/erc721/BEBadge"); +const Metadata = artifacts.require("core/JSONMetadata"); +const base = require("../scripts/base"); +const config = require("../config/config"); +const Distributor = artifacts.require("logic/NftDistributor"); + +module.exports = async function (deployer, network, accounts) { + const name = "Candy"; + const symbol = "CANDY"; + // await deployer.deploy(Box, name, symbol, 0); + const gachaInstance = await Box.deployed(); + if (gachaInstance) { + console.log("Candy successfully deployed."); + } + // base.updateArray({ + // name: "Candy", + // type: "erc721", + // json: "assets/contracts/BEBadge.json", + // address: gachaInstance.address, + // network, + // }); + + let metaaddr = '0xfba1F2861718993B94edd5DCe1D06b3Cbe19353d' + + if(network == 'arbitrum_one'){ + // await deployer.deploy(Metadata); + const metadataInstance = await Metadata.deployed(); + if (metadataInstance) { + console.log("metadataInstance successfully deployed."); + } + // base.updateArray({ + // name: "JSONMetadata", + // type: "logic", + // json: "assets/contracts/JSONMetadata.json", + // address: metadataInstance.address, + // network, + // }); + + const mtname = name + const mtdesc = "Candy Badge are exclusive to new friends entering the world of CiunterFire,\\n\ + it will have airdrop attributes and in-game benefits." + const mtimg = "https://gateway.pinata.cloud/ipfs/QmWuHBFGirZS7uyGDyEJNBnMjGLsP9Ke4QZaoL2MxYWtat" + const mtex = ',"animation_url": "https://gateway.pinata.cloud/ipfs/QmRJAN58RaFZUeor9VhdiqCziujwvwD98zq7xHUnmbzMXW"' + + await metadataInstance.setMetaData( + gachaInstance.address, + mtname, + mtdesc, + mtimg, + mtex + ); + console.log(`success update metadata for: ${gachaInstance.address}`); + + metaaddr = metadataInstance.address + } + + console.log('meta addr:', metaaddr) + + await gachaInstance.updateMetaAddress(metaaddr); + console.log(`success update meta address for: ${gachaInstance.address}`); + + const testexec = ['0x1cC73CE74BA0BC080e7C0a37cb3a68f435Ab333A'] + + let exec = network == 'arbitrum_one'? config.admins.executors: testexec + + console.log('exec addrs:', exec) + + await deployer.deploy( + Distributor, + gachaInstance.address, + exec + ); + 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 gachaInstance.setMintRole(distributorInstance.address); + + console.log( + `success set mint role to: ${distributorInstance.address} claim box ` + ); + + +}; diff --git a/package-lock.json b/package-lock.json index 951d28c..763475c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,9 @@ "license": "ISC", "dependencies": { "@openzeppelin/contracts": "4.9.2", - "fs-jetpack": "^5.1.0" + "dotenv": "^16.3.1", + "fs-jetpack": "^5.1.0", + "process": "^0.11.10" }, "devDependencies": { "@openzeppelin/test-helpers": "^0.5.15", @@ -5010,6 +5012,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/motdotla/dotenv?sponsor=1" + } + }, "node_modules/double-ended-queue": { "version": "2.1.0-0", "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", @@ -10580,7 +10593,6 @@ "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, "engines": { "node": ">= 0.6.0" } @@ -17271,6 +17283,11 @@ "is-obj": "^2.0.0" } }, + "dotenv": { + "version": "16.3.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", + "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==" + }, "double-ended-queue": { "version": "2.1.0-0", "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", @@ -21905,8 +21922,7 @@ "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" }, "process-nextick-args": { "version": "2.0.1", diff --git a/package.json b/package.json index f73535c..bfdf62d 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "candy_deploy:one": "truffle migrate --network arbitrum_one -f 17 --to 17 --compile-none", "stake_deploy:one": "truffle migrate --network arbitrum_one -f 9 --to 9 --compile-none", "update:stake": "npx truffle exec --network arbitrum_one ./init_scripts/update_stake.js", + "update:candy": "npx truffle exec --network arbitrum_one ./init_scripts/generate_candy.js", "size": "truffle run contract-size" }, "author": "", @@ -44,6 +45,8 @@ }, "dependencies": { "@openzeppelin/contracts": "4.9.2", - "fs-jetpack": "^5.1.0" + "dotenv": "^16.3.1", + "fs-jetpack": "^5.1.0", + "process": "^0.11.10" } } diff --git a/scripts/base.js b/scripts/base.js index 2033241..725990b 100644 --- a/scripts/base.js +++ b/scripts/base.js @@ -1,8 +1,16 @@ const jetpack = require("fs-jetpack"); +const dotenv = require("dotenv") +const path = require("path"); + +console.log('[dirname]', __dirname) +let dir = path.join(__dirname, "../") + '.env' + +dotenv.config({path: dir}); module.exports = { updateArray: function ({ name, type, json, address, network }) { - let env = process.env.NODE_ENV || "dev"; + let env = process.env.BEPUB || "dev"; + console.log('[env]', env) const filename = `./out_${network}_${env}.json`; let cfgs = jetpack.read(filename, "json"); cfgs = cfgs || []; @@ -23,8 +31,9 @@ module.exports = { }, loadData: function ({ network }) { - let env = process.env.NODE_ENV || "dev"; + let env = process.env.BEPUB || "dev"; + console.log('[env]', process.env.BEPUB) const filename = `./out_${network}_${env}.json`; return jetpack.read(filename, "json"); - }, + } }; diff --git a/signmsg.js b/signmsg.js index efef568..5023ba0 100644 --- a/signmsg.js +++ b/signmsg.js @@ -33,11 +33,14 @@ async function main(){ // console.log(hash) - let res = await abimodule.getBalance() - console.log(res) - if (res > 0){ + // let res = await abimodule.getBalance() + // console.log(res) + // if (res > 0){ - } + // } + + let res = await abimodule.getPastEvents() + console.log(res) } main()