From 7a4c0d47e4983230660ff15a7a19249734433609 Mon Sep 17 00:00:00 2001 From: gabrielcjm Date: Sun, 1 May 2022 14:31:54 -0300 Subject: [PATCH 1/3] Estrutura inicial do projeto --- .DS_Store | Bin 8196 -> 8196 bytes migrations/2_contract_migration.js | 5 - src/.DS_Store | Bin 8196 -> 10244 bytes src/abis/Address.json | 7938 ------ src/abis/Context.json | 508 - src/abis/Counters.json | 1688 -- src/abis/ERC165.json | 622 - src/abis/ERC721.json | 37745 --------------------------- src/abis/ERC721URIStorage.json | 3601 --- src/abis/IERC165.json | 336 - src/abis/IERC721.json | 3056 --- src/abis/IERC721Metadata.json | 994 - src/abis/IERC721Receiver.json | 518 - src/abis/MetadevsContract.json | 5954 ++--- src/abis/Migrations.json | 3168 --- src/abis/Strings.json | 5128 ---- src/contracts/MetadevsContract.sol | 16 - src/contracts/Migrations.sol | 22 +- src/pages/minter/index.js | 115 +- src/utils/interact.js | 115 +- src/utils/pinata.js | 62 +- truffle-config.js | 21 - 22 files changed, 3011 insertions(+), 68601 deletions(-) delete mode 100644 migrations/2_contract_migration.js delete mode 100644 src/abis/Address.json delete mode 100644 src/abis/Context.json delete mode 100644 src/abis/Counters.json delete mode 100644 src/abis/ERC165.json delete mode 100644 src/abis/ERC721.json delete mode 100644 src/abis/ERC721URIStorage.json delete mode 100644 src/abis/IERC165.json delete mode 100644 src/abis/IERC721.json delete mode 100644 src/abis/IERC721Metadata.json delete mode 100644 src/abis/IERC721Receiver.json delete mode 100644 src/abis/Migrations.json delete mode 100644 src/abis/Strings.json delete mode 100644 truffle-config.js diff --git a/.DS_Store b/.DS_Store index a792445e939db508211360635ae91eb817803ecf..a8e686574e1cb33056cc2cb3bce9d5b3413f1c20 100644 GIT binary patch delta 127 zcmZp1XmOa}&&azmU^hP_?_?eUY1VEA1_r&!Is)mUTnxDknGER+MGT1yB|ug_Lmor% zC!oc|ls;KX&}?&!pf}^@w?c=QHkN#6+{`ZVjb-y3 L5n;xSC0`f;C;%iY delta 349 zcmZp1XmOa}&nUPtU^hRb;A9>FY1W?%3=H!o>jV&; z-S+Uth_zF`h3quJ*Dnl_t391sX4fFnk0Z=gmgCI~{5zyE)Aj|>k&}B$w$Y;m{ o@-i9H8T1&k7>dzM=muE=F=1ojXU5I!65m)R$BAyDmz5tF0a`p_Z2$lO diff --git a/migrations/2_contract_migration.js b/migrations/2_contract_migration.js deleted file mode 100644 index 7d9b58a..0000000 --- a/migrations/2_contract_migration.js +++ /dev/null @@ -1,5 +0,0 @@ -const Contracts = artifacts.require("MetadevsContract"); - -module.exports = function (deployer) { - deployer.deploy(Contracts); -}; diff --git a/src/.DS_Store b/src/.DS_Store index e06b8a8dfc1887ddcbfb2eeacf9783d7760e5bc2..71d697a577bffbb9ed945d1a449a4a4ca6cc58ff 100644 GIT binary patch delta 793 zcmcIi&ubGw82!G)YGP9}n_q2gglH~8MItCY2)af@;*Tb6iX^leb~lrCaXYiw-K5q_ zdg#?d*@I{C4=6Dw5d^OuycNWY2f?#~BA)7OHk6vX3(I>m-}~PCc6N5;o$4F_V5!@> z1dtarB3>U!Y`2ryy?7S0gX-HjW`{9yI^_M7lAcUH`PetKo~4>x747d-%QPIfSo}f= zhQi0Dj-QA`Pfo{XPQ{6oNJ=RwozBe8rL&3oT$3bKMSG&#yvtfQxykL4*`-YqcOLW2 zvc_4}ragmh)?ND4tr^cmDKXKoLR*j2{-Me0mL)`~3DIqvQnsesMyt|pJJhWo;SE1d zv$<(jxnsBnXN~nyyh}IAtj$HFKSIUwOU?soI|3(q`kd7pift=Qr=_ijrlL}_!b;qA z`9|Fk-{H?b%B)$6W-z^Q{ku3<@k9&q`G6591O%WUzg!ye2*Fjx85OE(P%OxI$EpY{ zzzwLuI&|RvHoSmWum|tqBYcHlaDX$I!E?BP7w`%$qKsv{gZFS5S8y#b2;tc1%oxXj zE$@evx!kMS%;ZcLyS^|2Z7{$F3Mwez04 z7r(^FF*!jXgP(&lUO=L{+Q`sYN5R<0aieA`VVYOk>_M0RVJZAc_D0 diff --git a/src/abis/Address.json b/src/abis/Address.json deleted file mode 100644 index 17ec441..0000000 --- a/src/abis/Address.json +++ /dev/null @@ -1,7938 +0,0 @@ -{ - "contractName": "Address", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Collection of functions related to the address type\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Address.sol\":\"Address\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x2ccf9d2313a313d41a791505f2b5abfdc62191b5d4334f7f7a82691c088a1c87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a57d0854b2fdce6ebff933a48dca2445643d1eccfc27f00292e937f26c6a58\",\"dweb:/ipfs/QmW45rZooS9TqR4YXUbjRbtf2Bpb5ouSarBvfW1LdGprvV\"]}},\"version\":1}", - "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201e24e11923d484da47038440bceb62d5db08b1751b1b54b9d8368d96842a4ef464736f6c634300080d0033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212201e24e11923d484da47038440bceb62d5db08b1751b1b54b9d8368d96842a4ef464736f6c634300080d0033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "194:8061:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "194:8061:5:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.5.0) (utils/Address.sol)\n\npragma solidity ^0.8.1;\n\n/**\n * @dev Collection of functions related to the address type\n */\nlibrary Address {\n /**\n * @dev Returns true if `account` is a contract.\n *\n * [IMPORTANT]\n * ====\n * It is unsafe to assume that an address for which this function returns\n * false is an externally-owned account (EOA) and not a contract.\n *\n * Among others, `isContract` will return false for the following\n * types of addresses:\n *\n * - an externally-owned account\n * - a contract in construction\n * - an address where a contract will be created\n * - an address where a contract lived, but was destroyed\n * ====\n *\n * [IMPORTANT]\n * ====\n * You shouldn't rely on `isContract` to protect against flash loan attacks!\n *\n * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n * constructor.\n * ====\n */\n function isContract(address account) internal view returns (bool) {\n // This method relies on extcodesize/address.code.length, which returns 0\n // for contracts in construction, since the code is only stored at the end\n // of the constructor execution.\n\n return account.code.length > 0;\n }\n\n /**\n * @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n * `recipient`, forwarding all available gas and reverting on errors.\n *\n * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n * of certain opcodes, possibly making contracts go over the 2300 gas limit\n * imposed by `transfer`, making them unable to receive funds via\n * `transfer`. {sendValue} removes this limitation.\n *\n * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n *\n * IMPORTANT: because control is transferred to `recipient`, care must be\n * taken to not create reentrancy vulnerabilities. Consider using\n * {ReentrancyGuard} or the\n * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].\n */\n function sendValue(address payable recipient, uint256 amount) internal {\n require(address(this).balance >= amount, \"Address: insufficient balance\");\n\n (bool success, ) = recipient.call{value: amount}(\"\");\n require(success, \"Address: unable to send value, recipient may have reverted\");\n }\n\n /**\n * @dev Performs a Solidity function call using a low level `call`. A\n * plain `call` is an unsafe replacement for a function call: use this\n * function instead.\n *\n * If `target` reverts with a revert reason, it is bubbled up by this\n * function (like regular Solidity function calls).\n *\n * Returns the raw returned data. To convert to the expected return value,\n * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n *\n * Requirements:\n *\n * - `target` must be a contract.\n * - calling `target` with `data` must not revert.\n *\n * _Available since v3.1._\n */\n function functionCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionCall(target, data, \"Address: low-level call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n * `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n return functionCallWithValue(target, data, 0, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but also transferring `value` wei to `target`.\n *\n * Requirements:\n *\n * - the calling contract must have an ETH balance of at least `value`.\n * - the called Solidity function must be `payable`.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(\n address target,\n bytes memory data,\n uint256 value\n ) internal returns (bytes memory) {\n return functionCallWithValue(target, data, value, \"Address: low-level call with value failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n * with `errorMessage` as a fallback revert reason when `target` reverts.\n *\n * _Available since v3.1._\n */\n function functionCallWithValue(\n address target,\n bytes memory data,\n uint256 value,\n string memory errorMessage\n ) internal returns (bytes memory) {\n require(address(this).balance >= value, \"Address: insufficient balance for call\");\n require(isContract(target), \"Address: call to non-contract\");\n\n (bool success, bytes memory returndata) = target.call{value: value}(data);\n return verifyCallResult(success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {\n return functionStaticCall(target, data, \"Address: low-level static call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a static call.\n *\n * _Available since v3.3._\n */\n function functionStaticCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal view returns (bytes memory) {\n require(isContract(target), \"Address: static call to non-contract\");\n\n (bool success, bytes memory returndata) = target.staticcall(data);\n return verifyCallResult(success, returndata, errorMessage);\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {\n return functionDelegateCall(target, data, \"Address: low-level delegate call failed\");\n }\n\n /**\n * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n * but performing a delegate call.\n *\n * _Available since v3.4._\n */\n function functionDelegateCall(\n address target,\n bytes memory data,\n string memory errorMessage\n ) internal returns (bytes memory) {\n require(isContract(target), \"Address: delegate call to non-contract\");\n\n (bool success, bytes memory returndata) = target.delegatecall(data);\n return verifyCallResult(success, returndata, errorMessage);\n }\n\n /**\n * @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the\n * revert reason using the provided one.\n *\n * _Available since v4.3._\n */\n function verifyCallResult(\n bool success,\n bytes memory returndata,\n string memory errorMessage\n ) internal pure returns (bytes memory) {\n if (success) {\n return returndata;\n } else {\n // Look for revert reason and bubble it up if present\n if (returndata.length > 0) {\n // The easiest way to bubble the revert reason is using memory via assembly\n\n assembly {\n let returndata_size := mload(returndata)\n revert(add(32, returndata), returndata_size)\n }\n } else {\n revert(errorMessage);\n }\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Address.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "exportedSymbols": { - "Address": [ - 1449 - ] - }, - "id": 1450, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1156, - "literals": [ - "solidity", - "^", - "0.8", - ".1" - ], - "nodeType": "PragmaDirective", - "src": "101:23:5" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Address", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1157, - "nodeType": "StructuredDocumentation", - "src": "126:67:5", - "text": " @dev Collection of functions related to the address type" - }, - "fullyImplemented": true, - "id": 1449, - "linearizedBaseContracts": [ - 1449 - ], - "name": "Address", - "nameLocation": "202:7:5", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1171, - "nodeType": "Block", - "src": "1241:254:5", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 1165, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "1465:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "code", - "nodeType": "MemberAccess", - "src": "1465:12:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1465:19:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1168, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1487:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1465:23:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1164, - "id": 1170, - "nodeType": "Return", - "src": "1458:30:5" - } - ] - }, - "documentation": { - "id": 1158, - "nodeType": "StructuredDocumentation", - "src": "216:954:5", - "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" - }, - "id": 1172, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nameLocation": "1184:10:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1161, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1160, - "mutability": "mutable", - "name": "account", - "nameLocation": "1203:7:5", - "nodeType": "VariableDeclaration", - "scope": 1172, - "src": "1195:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1159, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1195:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1194:17:5" - }, - "returnParameters": { - "id": 1164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1163, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1172, - "src": "1235:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1162, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1235:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1234:6:5" - }, - "scope": 1449, - "src": "1175:320:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1205, - "nodeType": "Block", - "src": "2483:241:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1183, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "2509:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - ], - "id": 1182, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2501:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1181, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2501:7:5", - "typeDescriptions": {} - } - }, - "id": 1184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2501:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "2501:21:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1186, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "2526:6:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2501:31:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 1188, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2534:31:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 1180, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2493:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2493:73:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1190, - "nodeType": "ExpressionStatement", - "src": "2493:73:5" - }, - { - "assignments": [ - 1192, - null - ], - "declarations": [ - { - "constant": false, - "id": 1192, - "mutability": "mutable", - "name": "success", - "nameLocation": "2583:7:5", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "2578:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1191, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2578:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 1199, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2626:2:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 1193, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "2596:9:5", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 1194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2596:14:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1195, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "2618:6:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2596:29:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2596:33:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2577:52:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1201, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1192, - "src": "2647:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 1202, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2656:60:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - }, - "value": "Address: unable to send value, recipient may have reverted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 1200, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2639:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1203, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2639:78:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1204, - "nodeType": "ExpressionStatement", - "src": "2639:78:5" - } - ] - }, - "documentation": { - "id": 1173, - "nodeType": "StructuredDocumentation", - "src": "1501:906:5", - "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." - }, - "id": 1206, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nameLocation": "2421:9:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1178, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1175, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2447:9:5", - "nodeType": "VariableDeclaration", - "scope": 1206, - "src": "2431:25:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 1174, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2431:15:5", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1177, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2466:6:5", - "nodeType": "VariableDeclaration", - "scope": 1206, - "src": "2458:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1176, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2458:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2430:43:5" - }, - "returnParameters": { - "id": 1179, - "nodeType": "ParameterList", - "parameters": [], - "src": "2483:0:5" - }, - "scope": 1449, - "src": "2412:312:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1222, - "nodeType": "Block", - "src": "3555:84:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1217, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "3585:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1218, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1211, - "src": "3593:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 1219, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3599:32:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - }, - "value": "Address: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - } - ], - "id": 1216, - "name": "functionCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1223, - 1243 - ], - "referencedDeclaration": 1243, - "src": "3572:12:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 1220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3572:60:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1215, - "id": 1221, - "nodeType": "Return", - "src": "3565:67:5" - } - ] - }, - "documentation": { - "id": 1207, - "nodeType": "StructuredDocumentation", - "src": "2730:731:5", - "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" - }, - "id": 1223, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3475:12:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1209, - "mutability": "mutable", - "name": "target", - "nameLocation": "3496:6:5", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3488:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1208, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3488:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1211, - "mutability": "mutable", - "name": "data", - "nameLocation": "3517:4:5", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3504:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1210, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3504:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3487:35:5" - }, - "returnParameters": { - "id": 1215, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1214, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3541:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1213, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3541:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3540:14:5" - }, - "scope": 1449, - "src": "3466:173:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1242, - "nodeType": "Block", - "src": "4008:76:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1236, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1226, - "src": "4047:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1237, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "4055:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1238, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4061:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "id": 1239, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1230, - "src": "4064:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1235, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1263, - 1313 - ], - "referencedDeclaration": 1313, - "src": "4025:21:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4025:52:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1234, - "id": 1241, - "nodeType": "Return", - "src": "4018:59:5" - } - ] - }, - "documentation": { - "id": 1224, - "nodeType": "StructuredDocumentation", - "src": "3645:211:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1243, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3870:12:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1231, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1226, - "mutability": "mutable", - "name": "target", - "nameLocation": "3900:6:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3892:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3892:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1228, - "mutability": "mutable", - "name": "data", - "nameLocation": "3929:4:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3916:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1227, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3916:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1230, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "3957:12:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3943:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1229, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3943:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3882:93:5" - }, - "returnParameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1233, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3994:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1232, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3994:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3993:14:5" - }, - "scope": 1449, - "src": "3861:223:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1262, - "nodeType": "Block", - "src": "4589:111:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1256, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1246, - "src": "4628:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1257, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1248, - "src": "4636:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1258, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1250, - "src": "4642:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4649:43:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - }, - "value": "Address: low-level call with value failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - } - ], - "id": 1255, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1263, - 1313 - ], - "referencedDeclaration": 1313, - "src": "4606:21:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1260, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4606:87:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1254, - "id": 1261, - "nodeType": "Return", - "src": "4599:94:5" - } - ] - }, - "documentation": { - "id": 1244, - "nodeType": "StructuredDocumentation", - "src": "4090:351:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" - }, - "id": 1263, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4455:21:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1251, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1246, - "mutability": "mutable", - "name": "target", - "nameLocation": "4494:6:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4486:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1245, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4486:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1248, - "mutability": "mutable", - "name": "data", - "nameLocation": "4523:4:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4510:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1247, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4510:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1250, - "mutability": "mutable", - "name": "value", - "nameLocation": "4545:5:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4537:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1249, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4537:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4476:80:5" - }, - "returnParameters": { - "id": 1254, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1253, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4575:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1252, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4575:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4574:14:5" - }, - "scope": 1449, - "src": "4446:254:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1312, - "nodeType": "Block", - "src": "5127:320:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1280, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "5153:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - ], - "id": 1279, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5145:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1278, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5145:7:5", - "typeDescriptions": {} - } - }, - "id": 1281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5145:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1282, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "5145:21:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1283, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1270, - "src": "5170:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5145:30:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 1285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5177:40:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - }, - "value": "Address: insufficient balance for call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - } - ], - "id": 1277, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5137:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1286, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5137:81:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1287, - "nodeType": "ExpressionStatement", - "src": "5137:81:5" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1290, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "5247:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1289, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "5236:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5236:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5256:31:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - }, - "value": "Address: call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - } - ], - "id": 1288, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5228:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5228:60:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1294, - "nodeType": "ExpressionStatement", - "src": "5228:60:5" - }, - { - "assignments": [ - 1296, - 1298 - ], - "declarations": [ - { - "constant": false, - "id": 1296, - "mutability": "mutable", - "name": "success", - "nameLocation": "5305:7:5", - "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "5300:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1295, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5300:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1298, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "5327:10:5", - "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "5314:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1297, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5314:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1305, - "initialValue": { - "arguments": [ - { - "id": 1303, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1268, - "src": "5367:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1299, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "5341:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "5341:11:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1301, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1270, - "src": "5360:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "5341:25:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5341:31:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5299:73:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1307, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1296, - "src": "5406:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1308, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "5415:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1309, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1272, - "src": "5427:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1306, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "5389:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5389:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1276, - "id": 1311, - "nodeType": "Return", - "src": "5382:58:5" - } - ] - }, - "documentation": { - "id": 1264, - "nodeType": "StructuredDocumentation", - "src": "4706:237:5", - "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1313, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4957:21:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1273, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1266, - "mutability": "mutable", - "name": "target", - "nameLocation": "4996:6:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "4988:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1265, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4988:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1268, - "mutability": "mutable", - "name": "data", - "nameLocation": "5025:4:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5012:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1267, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5012:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1270, - "mutability": "mutable", - "name": "value", - "nameLocation": "5047:5:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5039:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1269, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5039:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1272, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "5076:12:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5062:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1271, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5062:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4978:116:5" - }, - "returnParameters": { - "id": 1276, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1275, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5113:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1274, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5113:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5112:14:5" - }, - "scope": 1449, - "src": "4948:499:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1329, - "nodeType": "Block", - "src": "5724:97:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1324, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5760:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1325, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5768:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 1326, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5774:39:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - }, - "value": "Address: low-level static call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - } - ], - "id": 1323, - "name": "functionStaticCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1330, - 1365 - ], - "referencedDeclaration": 1365, - "src": "5741:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 1327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5741:73:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1322, - "id": 1328, - "nodeType": "Return", - "src": "5734:80:5" - } - ] - }, - "documentation": { - "id": 1314, - "nodeType": "StructuredDocumentation", - "src": "5453:166:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1330, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "5633:18:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1319, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1316, - "mutability": "mutable", - "name": "target", - "nameLocation": "5660:6:5", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5652:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1315, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5652:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1318, - "mutability": "mutable", - "name": "data", - "nameLocation": "5681:4:5", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5668:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1317, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5668:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5651:35:5" - }, - "returnParameters": { - "id": 1322, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1321, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5710:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1320, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5710:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5709:14:5" - }, - "scope": 1449, - "src": "5624:197:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1364, - "nodeType": "Block", - "src": "6163:228:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1344, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "6192:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1343, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "6181:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6181:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a207374617469632063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1346, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6201:38:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - }, - "value": "Address: static call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - } - ], - "id": 1342, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6173:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1347, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6173:67:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1348, - "nodeType": "ExpressionStatement", - "src": "6173:67:5" - }, - { - "assignments": [ - 1350, - 1352 - ], - "declarations": [ - { - "constant": false, - "id": 1350, - "mutability": "mutable", - "name": "success", - "nameLocation": "6257:7:5", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "6252:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1349, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6252:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1352, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "6279:10:5", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "6266:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1351, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6266:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1357, - "initialValue": { - "arguments": [ - { - "id": 1355, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1335, - "src": "6311:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1353, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "6293:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "6293:17:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6293:23:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6251:65:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1359, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1350, - "src": "6350:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1360, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1352, - "src": "6359:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1361, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1337, - "src": "6371:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1358, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "6333:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6333:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1341, - "id": 1363, - "nodeType": "Return", - "src": "6326:58:5" - } - ] - }, - "documentation": { - "id": 1331, - "nodeType": "StructuredDocumentation", - "src": "5827:173:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1365, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "6014:18:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1338, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1333, - "mutability": "mutable", - "name": "target", - "nameLocation": "6050:6:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6042:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1332, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6042:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1335, - "mutability": "mutable", - "name": "data", - "nameLocation": "6079:4:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6066:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1334, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6066:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1337, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "6107:12:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6093:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1336, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6093:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6032:93:5" - }, - "returnParameters": { - "id": 1341, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1340, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6149:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1339, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6149:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6148:14:5" - }, - "scope": 1449, - "src": "6005:386:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1381, - "nodeType": "Block", - "src": "6667:101:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1376, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1368, - "src": "6705:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1377, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1370, - "src": "6713:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6719:41:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - }, - "value": "Address: low-level delegate call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - } - ], - "id": 1375, - "name": "functionDelegateCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1382, - 1417 - ], - "referencedDeclaration": 1417, - "src": "6684:20:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 1379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6684:77:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1374, - "id": 1380, - "nodeType": "Return", - "src": "6677:84:5" - } - ] - }, - "documentation": { - "id": 1366, - "nodeType": "StructuredDocumentation", - "src": "6397:168:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 1382, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6579:20:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1371, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1368, - "mutability": "mutable", - "name": "target", - "nameLocation": "6608:6:5", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6600:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1367, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6600:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1370, - "mutability": "mutable", - "name": "data", - "nameLocation": "6629:4:5", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6616:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1369, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6616:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6599:35:5" - }, - "returnParameters": { - "id": 1374, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1373, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6653:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1372, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6653:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6652:14:5" - }, - "scope": 1449, - "src": "6570:198:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1416, - "nodeType": "Block", - "src": "7109:232:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1396, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "7138:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1395, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "7127:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7127:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7147:40:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - }, - "value": "Address: delegate call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - } - ], - "id": 1394, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7119:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7119:69:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1400, - "nodeType": "ExpressionStatement", - "src": "7119:69:5" - }, - { - "assignments": [ - 1402, - 1404 - ], - "declarations": [ - { - "constant": false, - "id": 1402, - "mutability": "mutable", - "name": "success", - "nameLocation": "7205:7:5", - "nodeType": "VariableDeclaration", - "scope": 1416, - "src": "7200:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1401, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7200:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1404, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7227:10:5", - "nodeType": "VariableDeclaration", - "scope": 1416, - "src": "7214:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1403, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7214:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1409, - "initialValue": { - "arguments": [ - { - "id": 1407, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1387, - "src": "7261:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1405, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "7241:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "7241:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7241:25:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7199:67:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1411, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1402, - "src": "7300:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1412, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1404, - "src": "7309:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1413, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "7321:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1410, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "7283:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7283:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1393, - "id": 1415, - "nodeType": "Return", - "src": "7276:58:5" - } - ] - }, - "documentation": { - "id": 1383, - "nodeType": "StructuredDocumentation", - "src": "6774:175:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 1417, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6963:20:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1390, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1385, - "mutability": "mutable", - "name": "target", - "nameLocation": "7001:6:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "6993:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1384, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6993:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1387, - "mutability": "mutable", - "name": "data", - "nameLocation": "7030:4:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7017:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1386, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7017:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1389, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7058:12:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7044:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1388, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7044:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6983:93:5" - }, - "returnParameters": { - "id": 1393, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1392, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7095:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1391, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7095:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7094:14:5" - }, - "scope": 1449, - "src": "6954:387:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1447, - "nodeType": "Block", - "src": "7721:532:5", - "statements": [ - { - "condition": { - "id": 1429, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1420, - "src": "7735:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1445, - "nodeType": "Block", - "src": "7792:455:5", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1436, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1433, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1422, - "src": "7876:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1434, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7876:17:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1435, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7896:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7876:21:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1443, - "nodeType": "Block", - "src": "8184:53:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1440, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1424, - "src": "8209:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1439, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "8202:6:5", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8202:20:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1442, - "nodeType": "ExpressionStatement", - "src": "8202:20:5" - } - ] - }, - "id": 1444, - "nodeType": "IfStatement", - "src": "7872:365:5", - "trueBody": { - "id": 1438, - "nodeType": "Block", - "src": "7899:279:5", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "8019:145:5", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "8041:40:5", - "value": { - "arguments": [ - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8070:10:5" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8064:5:5" - }, - "nodeType": "YulFunctionCall", - "src": "8064:17:5" - }, - "variables": [ - { - "name": "returndata_size", - "nodeType": "YulTypedName", - "src": "8045:15:5", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8113:2:5", - "type": "", - "value": "32" - }, - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8117:10:5" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8109:3:5" - }, - "nodeType": "YulFunctionCall", - "src": "8109:19:5" - }, - { - "name": "returndata_size", - "nodeType": "YulIdentifier", - "src": "8130:15:5" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8102:6:5" - }, - "nodeType": "YulFunctionCall", - "src": "8102:44:5" - }, - "nodeType": "YulExpressionStatement", - "src": "8102:44:5" - } - ] - }, - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 1422, - "isOffset": false, - "isSlot": false, - "src": "8070:10:5", - "valueSize": 1 - }, - { - "declaration": 1422, - "isOffset": false, - "isSlot": false, - "src": "8117:10:5", - "valueSize": 1 - } - ], - "id": 1437, - "nodeType": "InlineAssembly", - "src": "8010:154:5" - } - ] - } - } - ] - }, - "id": 1446, - "nodeType": "IfStatement", - "src": "7731:516:5", - "trueBody": { - "id": 1432, - "nodeType": "Block", - "src": "7744:42:5", - "statements": [ - { - "expression": { - "id": 1430, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1422, - "src": "7765:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1428, - "id": 1431, - "nodeType": "Return", - "src": "7758:17:5" - } - ] - } - } - ] - }, - "documentation": { - "id": 1418, - "nodeType": "StructuredDocumentation", - "src": "7347:209:5", - "text": " @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason using the provided one.\n _Available since v4.3._" - }, - "id": 1448, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResult", - "nameLocation": "7570:16:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1425, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1420, - "mutability": "mutable", - "name": "success", - "nameLocation": "7601:7:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7596:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1419, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7596:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1422, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7631:10:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7618:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1421, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7618:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1424, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7665:12:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7651:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1423, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7651:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7586:97:5" - }, - "returnParameters": { - "id": 1428, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1427, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7707:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1426, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7707:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7706:14:5" - }, - "scope": 1449, - "src": "7561:692:5", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1450, - "src": "194:8061:5", - "usedErrors": [] - } - ], - "src": "101:8155:5" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "exportedSymbols": { - "Address": [ - 1449 - ] - }, - "id": 1450, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1156, - "literals": [ - "solidity", - "^", - "0.8", - ".1" - ], - "nodeType": "PragmaDirective", - "src": "101:23:5" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Address", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1157, - "nodeType": "StructuredDocumentation", - "src": "126:67:5", - "text": " @dev Collection of functions related to the address type" - }, - "fullyImplemented": true, - "id": 1449, - "linearizedBaseContracts": [ - 1449 - ], - "name": "Address", - "nameLocation": "202:7:5", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1171, - "nodeType": "Block", - "src": "1241:254:5", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1169, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "expression": { - "id": 1165, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1160, - "src": "1465:7:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1166, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "code", - "nodeType": "MemberAccess", - "src": "1465:12:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1167, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1465:19:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1168, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1487:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1465:23:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1164, - "id": 1170, - "nodeType": "Return", - "src": "1458:30:5" - } - ] - }, - "documentation": { - "id": 1158, - "nodeType": "StructuredDocumentation", - "src": "216:954:5", - "text": " @dev Returns true if `account` is a contract.\n [IMPORTANT]\n ====\n It is unsafe to assume that an address for which this function returns\n false is an externally-owned account (EOA) and not a contract.\n Among others, `isContract` will return false for the following\n types of addresses:\n - an externally-owned account\n - a contract in construction\n - an address where a contract will be created\n - an address where a contract lived, but was destroyed\n ====\n [IMPORTANT]\n ====\n You shouldn't rely on `isContract` to protect against flash loan attacks!\n Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets\n like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract\n constructor.\n ====" - }, - "id": 1172, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isContract", - "nameLocation": "1184:10:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1161, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1160, - "mutability": "mutable", - "name": "account", - "nameLocation": "1203:7:5", - "nodeType": "VariableDeclaration", - "scope": 1172, - "src": "1195:15:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1159, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1195:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1194:17:5" - }, - "returnParameters": { - "id": 1164, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1163, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1172, - "src": "1235:4:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1162, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1235:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1234:6:5" - }, - "scope": 1449, - "src": "1175:320:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1205, - "nodeType": "Block", - "src": "2483:241:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1187, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1183, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "2509:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - ], - "id": 1182, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2501:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1181, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2501:7:5", - "typeDescriptions": {} - } - }, - "id": 1184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2501:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1185, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "2501:21:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1186, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "2526:6:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2501:31:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e6365", - "id": 1188, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2534:31:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - }, - "value": "Address: insufficient balance" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5597a22abd0ef5332f8053862eb236db7590f17e2b93a53f63a103becfb561f9", - "typeString": "literal_string \"Address: insufficient balance\"" - } - ], - "id": 1180, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2493:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2493:73:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1190, - "nodeType": "ExpressionStatement", - "src": "2493:73:5" - }, - { - "assignments": [ - 1192, - null - ], - "declarations": [ - { - "constant": false, - "id": 1192, - "mutability": "mutable", - "name": "success", - "nameLocation": "2583:7:5", - "nodeType": "VariableDeclaration", - "scope": 1205, - "src": "2578:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1191, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2578:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - null - ], - "id": 1199, - "initialValue": { - "arguments": [ - { - "hexValue": "", - "id": 1197, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2626:2:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "expression": { - "id": 1193, - "name": "recipient", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "2596:9:5", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "id": 1194, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "2596:14:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1196, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1195, - "name": "amount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "2618:6:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "2596:29:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1198, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2596:33:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2577:52:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1201, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1192, - "src": "2647:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20756e61626c6520746f2073656e642076616c75652c20726563697069656e74206d61792068617665207265766572746564", - "id": 1202, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2656:60:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - }, - "value": "Address: unable to send value, recipient may have reverted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_51ddaa38748c0a1144620fb5bfe8edab31ea437571ad591a7734bbfd0429aeae", - "typeString": "literal_string \"Address: unable to send value, recipient may have reverted\"" - } - ], - "id": 1200, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2639:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1203, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2639:78:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1204, - "nodeType": "ExpressionStatement", - "src": "2639:78:5" - } - ] - }, - "documentation": { - "id": 1173, - "nodeType": "StructuredDocumentation", - "src": "1501:906:5", - "text": " @dev Replacement for Solidity's `transfer`: sends `amount` wei to\n `recipient`, forwarding all available gas and reverting on errors.\n https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost\n of certain opcodes, possibly making contracts go over the 2300 gas limit\n imposed by `transfer`, making them unable to receive funds via\n `transfer`. {sendValue} removes this limitation.\n https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].\n IMPORTANT: because control is transferred to `recipient`, care must be\n taken to not create reentrancy vulnerabilities. Consider using\n {ReentrancyGuard} or the\n https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]." - }, - "id": 1206, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "sendValue", - "nameLocation": "2421:9:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1178, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1175, - "mutability": "mutable", - "name": "recipient", - "nameLocation": "2447:9:5", - "nodeType": "VariableDeclaration", - "scope": 1206, - "src": "2431:25:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - }, - "typeName": { - "id": 1174, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2431:15:5", - "stateMutability": "payable", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1177, - "mutability": "mutable", - "name": "amount", - "nameLocation": "2466:6:5", - "nodeType": "VariableDeclaration", - "scope": 1206, - "src": "2458:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1176, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2458:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2430:43:5" - }, - "returnParameters": { - "id": 1179, - "nodeType": "ParameterList", - "parameters": [], - "src": "2483:0:5" - }, - "scope": 1449, - "src": "2412:312:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1222, - "nodeType": "Block", - "src": "3555:84:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1217, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1209, - "src": "3585:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1218, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1211, - "src": "3593:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c206661696c6564", - "id": 1219, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3599:32:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - }, - "value": "Address: low-level call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_24d7ab5d382116e64324f19950ca9340b8af1ddeb09a8d026e0a3c6a01dcc9df", - "typeString": "literal_string \"Address: low-level call failed\"" - } - ], - "id": 1216, - "name": "functionCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1223, - 1243 - ], - "referencedDeclaration": 1243, - "src": "3572:12:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 1220, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3572:60:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1215, - "id": 1221, - "nodeType": "Return", - "src": "3565:67:5" - } - ] - }, - "documentation": { - "id": 1207, - "nodeType": "StructuredDocumentation", - "src": "2730:731:5", - "text": " @dev Performs a Solidity function call using a low level `call`. A\n plain `call` is an unsafe replacement for a function call: use this\n function instead.\n If `target` reverts with a revert reason, it is bubbled up by this\n function (like regular Solidity function calls).\n Returns the raw returned data. To convert to the expected return value,\n use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].\n Requirements:\n - `target` must be a contract.\n - calling `target` with `data` must not revert.\n _Available since v3.1._" - }, - "id": 1223, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3475:12:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1209, - "mutability": "mutable", - "name": "target", - "nameLocation": "3496:6:5", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3488:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1208, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3488:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1211, - "mutability": "mutable", - "name": "data", - "nameLocation": "3517:4:5", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3504:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1210, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3504:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3487:35:5" - }, - "returnParameters": { - "id": 1215, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1214, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1223, - "src": "3541:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1213, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3541:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3540:14:5" - }, - "scope": 1449, - "src": "3466:173:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1242, - "nodeType": "Block", - "src": "4008:76:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1236, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1226, - "src": "4047:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1237, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1228, - "src": "4055:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "30", - "id": 1238, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4061:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - { - "id": 1239, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1230, - "src": "4064:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1235, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1263, - 1313 - ], - "referencedDeclaration": 1313, - "src": "4025:21:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1240, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4025:52:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1234, - "id": 1241, - "nodeType": "Return", - "src": "4018:59:5" - } - ] - }, - "documentation": { - "id": 1224, - "nodeType": "StructuredDocumentation", - "src": "3645:211:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with\n `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1243, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCall", - "nameLocation": "3870:12:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1231, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1226, - "mutability": "mutable", - "name": "target", - "nameLocation": "3900:6:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3892:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3892:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1228, - "mutability": "mutable", - "name": "data", - "nameLocation": "3929:4:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3916:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1227, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3916:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1230, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "3957:12:5", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3943:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1229, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3943:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3882:93:5" - }, - "returnParameters": { - "id": 1234, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1233, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "3994:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1232, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3994:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "3993:14:5" - }, - "scope": 1449, - "src": "3861:223:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1262, - "nodeType": "Block", - "src": "4589:111:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1256, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1246, - "src": "4628:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1257, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1248, - "src": "4636:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1258, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1250, - "src": "4642:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2063616c6c20776974682076616c7565206661696c6564", - "id": 1259, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4649:43:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - }, - "value": "Address: low-level call with value failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_88a4a0b5e975840320a0475d4027005235904fdb5ece94df156f3d717cb2dbfc", - "typeString": "literal_string \"Address: low-level call with value failed\"" - } - ], - "id": 1255, - "name": "functionCallWithValue", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1263, - 1313 - ], - "referencedDeclaration": 1313, - "src": "4606:21:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_uint256_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,uint256,string memory) returns (bytes memory)" - } - }, - "id": 1260, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4606:87:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1254, - "id": 1261, - "nodeType": "Return", - "src": "4599:94:5" - } - ] - }, - "documentation": { - "id": 1244, - "nodeType": "StructuredDocumentation", - "src": "4090:351:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but also transferring `value` wei to `target`.\n Requirements:\n - the calling contract must have an ETH balance of at least `value`.\n - the called Solidity function must be `payable`.\n _Available since v3.1._" - }, - "id": 1263, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4455:21:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1251, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1246, - "mutability": "mutable", - "name": "target", - "nameLocation": "4494:6:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4486:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1245, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4486:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1248, - "mutability": "mutable", - "name": "data", - "nameLocation": "4523:4:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4510:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1247, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4510:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1250, - "mutability": "mutable", - "name": "value", - "nameLocation": "4545:5:5", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4537:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1249, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4537:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4476:80:5" - }, - "returnParameters": { - "id": 1254, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1253, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1263, - "src": "4575:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1252, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "4575:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "4574:14:5" - }, - "scope": 1449, - "src": "4446:254:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1312, - "nodeType": "Block", - "src": "5127:320:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1284, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1280, - "name": "this", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967268, - "src": "5153:4:5", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_contract$_Address_$1449", - "typeString": "library Address" - } - ], - "id": 1279, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "5145:7:5", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 1278, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5145:7:5", - "typeDescriptions": {} - } - }, - "id": 1281, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5145:13:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1282, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "balance", - "nodeType": "MemberAccess", - "src": "5145:21:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "id": 1283, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1270, - "src": "5170:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "5145:30:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c", - "id": 1285, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5177:40:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - }, - "value": "Address: insufficient balance for call" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_565f1a77334fc4792800921178c71e4521acffab18ff9e7885b49377ee80ab4c", - "typeString": "literal_string \"Address: insufficient balance for call\"" - } - ], - "id": 1277, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5137:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1286, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5137:81:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1287, - "nodeType": "ExpressionStatement", - "src": "5137:81:5" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1290, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "5247:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1289, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "5236:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5236:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1292, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5256:31:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - }, - "value": "Address: call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad", - "typeString": "literal_string \"Address: call to non-contract\"" - } - ], - "id": 1288, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5228:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1293, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5228:60:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1294, - "nodeType": "ExpressionStatement", - "src": "5228:60:5" - }, - { - "assignments": [ - 1296, - 1298 - ], - "declarations": [ - { - "constant": false, - "id": 1296, - "mutability": "mutable", - "name": "success", - "nameLocation": "5305:7:5", - "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "5300:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1295, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "5300:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1298, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "5327:10:5", - "nodeType": "VariableDeclaration", - "scope": 1312, - "src": "5314:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1297, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5314:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1305, - "initialValue": { - "arguments": [ - { - "id": 1303, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1268, - "src": "5367:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1299, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1266, - "src": "5341:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1300, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "call", - "nodeType": "MemberAccess", - "src": "5341:11:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1302, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "names": [ - "value" - ], - "nodeType": "FunctionCallOptions", - "options": [ - { - "id": 1301, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1270, - "src": "5360:5:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "src": "5341:25:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value", - "typeString": "function (bytes memory) payable returns (bool,bytes memory)" - } - }, - "id": 1304, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5341:31:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "5299:73:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1307, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1296, - "src": "5406:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1308, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1298, - "src": "5415:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1309, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1272, - "src": "5427:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1306, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "5389:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1310, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5389:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1276, - "id": 1311, - "nodeType": "Return", - "src": "5382:58:5" - } - ] - }, - "documentation": { - "id": 1264, - "nodeType": "StructuredDocumentation", - "src": "4706:237:5", - "text": " @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but\n with `errorMessage` as a fallback revert reason when `target` reverts.\n _Available since v3.1._" - }, - "id": 1313, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionCallWithValue", - "nameLocation": "4957:21:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1273, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1266, - "mutability": "mutable", - "name": "target", - "nameLocation": "4996:6:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "4988:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1265, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4988:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1268, - "mutability": "mutable", - "name": "data", - "nameLocation": "5025:4:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5012:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1267, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5012:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1270, - "mutability": "mutable", - "name": "value", - "nameLocation": "5047:5:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5039:13:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1269, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5039:7:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1272, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "5076:12:5", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5062:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1271, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5062:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "4978:116:5" - }, - "returnParameters": { - "id": 1276, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1275, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1313, - "src": "5113:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1274, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5113:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5112:14:5" - }, - "scope": 1449, - "src": "4948:499:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1329, - "nodeType": "Block", - "src": "5724:97:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1324, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5760:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1325, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5768:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c207374617469632063616c6c206661696c6564", - "id": 1326, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5774:39:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - }, - "value": "Address: low-level static call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_90ec82aa826a536a4cbfae44ecfa384680faa9a4b77344bce96aa761ad904df0", - "typeString": "literal_string \"Address: low-level static call failed\"" - } - ], - "id": 1323, - "name": "functionStaticCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1330, - 1365 - ], - "referencedDeclaration": 1365, - "src": "5741:18:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) view returns (bytes memory)" - } - }, - "id": 1327, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5741:73:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1322, - "id": 1328, - "nodeType": "Return", - "src": "5734:80:5" - } - ] - }, - "documentation": { - "id": 1314, - "nodeType": "StructuredDocumentation", - "src": "5453:166:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1330, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "5633:18:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1319, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1316, - "mutability": "mutable", - "name": "target", - "nameLocation": "5660:6:5", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5652:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1315, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5652:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1318, - "mutability": "mutable", - "name": "data", - "nameLocation": "5681:4:5", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5668:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1317, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5668:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5651:35:5" - }, - "returnParameters": { - "id": 1322, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1321, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1330, - "src": "5710:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1320, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5710:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5709:14:5" - }, - "scope": 1449, - "src": "5624:197:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1364, - "nodeType": "Block", - "src": "6163:228:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1344, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "6192:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1343, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "6181:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1345, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6181:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a207374617469632063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1346, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6201:38:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - }, - "value": "Address: static call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c79cc78e4f16ce3933a42b84c73868f93bb4a59c031a0acf576679de98c608a9", - "typeString": "literal_string \"Address: static call to non-contract\"" - } - ], - "id": 1342, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6173:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1347, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6173:67:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1348, - "nodeType": "ExpressionStatement", - "src": "6173:67:5" - }, - { - "assignments": [ - 1350, - 1352 - ], - "declarations": [ - { - "constant": false, - "id": 1350, - "mutability": "mutable", - "name": "success", - "nameLocation": "6257:7:5", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "6252:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1349, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "6252:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1352, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "6279:10:5", - "nodeType": "VariableDeclaration", - "scope": 1364, - "src": "6266:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1351, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6266:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1357, - "initialValue": { - "arguments": [ - { - "id": 1355, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1335, - "src": "6311:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1353, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "6293:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1354, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "staticcall", - "nodeType": "MemberAccess", - "src": "6293:17:5", - "typeDescriptions": { - "typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) view returns (bool,bytes memory)" - } - }, - "id": 1356, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6293:23:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "6251:65:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1359, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1350, - "src": "6350:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1360, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1352, - "src": "6359:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1361, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1337, - "src": "6371:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1358, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "6333:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1362, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6333:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1341, - "id": 1363, - "nodeType": "Return", - "src": "6326:58:5" - } - ] - }, - "documentation": { - "id": 1331, - "nodeType": "StructuredDocumentation", - "src": "5827:173:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a static call.\n _Available since v3.3._" - }, - "id": 1365, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionStaticCall", - "nameLocation": "6014:18:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1338, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1333, - "mutability": "mutable", - "name": "target", - "nameLocation": "6050:6:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6042:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1332, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6042:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1335, - "mutability": "mutable", - "name": "data", - "nameLocation": "6079:4:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6066:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1334, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6066:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1337, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "6107:12:5", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6093:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1336, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "6093:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6032:93:5" - }, - "returnParameters": { - "id": 1341, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1340, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1365, - "src": "6149:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1339, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6149:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6148:14:5" - }, - "scope": 1449, - "src": "6005:386:5", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1381, - "nodeType": "Block", - "src": "6667:101:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1376, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1368, - "src": "6705:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 1377, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1370, - "src": "6713:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "hexValue": "416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564", - "id": 1378, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6719:41:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - }, - "value": "Address: low-level delegate call failed" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_stringliteral_9fdcd12e4b726339b32a442b0a448365d5d85c96b2d2cff917b4f66c63110398", - "typeString": "literal_string \"Address: low-level delegate call failed\"" - } - ], - "id": 1375, - "name": "functionDelegateCall", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1382, - 1417 - ], - "referencedDeclaration": 1417, - "src": "6684:20:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (address,bytes memory,string memory) returns (bytes memory)" - } - }, - "id": 1379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6684:77:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1374, - "id": 1380, - "nodeType": "Return", - "src": "6677:84:5" - } - ] - }, - "documentation": { - "id": 1366, - "nodeType": "StructuredDocumentation", - "src": "6397:168:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 1382, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6579:20:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1371, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1368, - "mutability": "mutable", - "name": "target", - "nameLocation": "6608:6:5", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6600:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1367, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6600:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1370, - "mutability": "mutable", - "name": "data", - "nameLocation": "6629:4:5", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6616:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1369, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6616:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6599:35:5" - }, - "returnParameters": { - "id": 1374, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1373, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1382, - "src": "6653:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1372, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6653:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6652:14:5" - }, - "scope": 1449, - "src": "6570:198:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1416, - "nodeType": "Block", - "src": "7109:232:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1396, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "7138:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1395, - "name": "isContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1172, - "src": "7127:10:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 1397, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7127:18:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6e7472616374", - "id": 1398, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7147:40:5", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - }, - "value": "Address: delegate call to non-contract" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b94ded0918034cf8f896e19fa3cfdef1188cd569c577264a3622e49152f88520", - "typeString": "literal_string \"Address: delegate call to non-contract\"" - } - ], - "id": 1394, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7119:7:5", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1399, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7119:69:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1400, - "nodeType": "ExpressionStatement", - "src": "7119:69:5" - }, - { - "assignments": [ - 1402, - 1404 - ], - "declarations": [ - { - "constant": false, - "id": 1402, - "mutability": "mutable", - "name": "success", - "nameLocation": "7205:7:5", - "nodeType": "VariableDeclaration", - "scope": 1416, - "src": "7200:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1401, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7200:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1404, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7227:10:5", - "nodeType": "VariableDeclaration", - "scope": 1416, - "src": "7214:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1403, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7214:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1409, - "initialValue": { - "arguments": [ - { - "id": 1407, - "name": "data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1387, - "src": "7261:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "id": 1405, - "name": "target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "7241:6:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 1406, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "delegatecall", - "nodeType": "MemberAccess", - "src": "7241:19:5", - "typeDescriptions": { - "typeIdentifier": "t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "function (bytes memory) returns (bool,bytes memory)" - } - }, - "id": 1408, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7241:25:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", - "typeString": "tuple(bool,bytes memory)" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7199:67:5" - }, - { - "expression": { - "arguments": [ - { - "id": 1411, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1402, - "src": "7300:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "id": 1412, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1404, - "src": "7309:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - { - "id": 1413, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1389, - "src": "7321:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1410, - "name": "verifyCallResult", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1448, - "src": "7283:16:5", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_bool_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (bool,bytes memory,string memory) pure returns (bytes memory)" - } - }, - "id": 1414, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7283:51:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1393, - "id": 1415, - "nodeType": "Return", - "src": "7276:58:5" - } - ] - }, - "documentation": { - "id": 1383, - "nodeType": "StructuredDocumentation", - "src": "6774:175:5", - "text": " @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],\n but performing a delegate call.\n _Available since v3.4._" - }, - "id": 1417, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "functionDelegateCall", - "nameLocation": "6963:20:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1390, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1385, - "mutability": "mutable", - "name": "target", - "nameLocation": "7001:6:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "6993:14:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1384, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6993:7:5", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1387, - "mutability": "mutable", - "name": "data", - "nameLocation": "7030:4:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7017:17:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1386, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7017:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1389, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7058:12:5", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7044:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1388, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7044:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "6983:93:5" - }, - "returnParameters": { - "id": 1393, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1392, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1417, - "src": "7095:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1391, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7095:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7094:14:5" - }, - "scope": 1449, - "src": "6954:387:5", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1447, - "nodeType": "Block", - "src": "7721:532:5", - "statements": [ - { - "condition": { - "id": 1429, - "name": "success", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1420, - "src": "7735:7:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1445, - "nodeType": "Block", - "src": "7792:455:5", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1436, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1433, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1422, - "src": "7876:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1434, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "7876:17:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1435, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7896:1:5", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "7876:21:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 1443, - "nodeType": "Block", - "src": "8184:53:5", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1440, - "name": "errorMessage", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1424, - "src": "8209:12:5", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1439, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "8202:6:5", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 1441, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8202:20:5", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1442, - "nodeType": "ExpressionStatement", - "src": "8202:20:5" - } - ] - }, - "id": 1444, - "nodeType": "IfStatement", - "src": "7872:365:5", - "trueBody": { - "id": 1438, - "nodeType": "Block", - "src": "7899:279:5", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "8019:145:5", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "8041:40:5", - "value": { - "arguments": [ - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8070:10:5" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "8064:5:5" - }, - "nodeType": "YulFunctionCall", - "src": "8064:17:5" - }, - "variables": [ - { - "name": "returndata_size", - "nodeType": "YulTypedName", - "src": "8045:15:5", - "type": "" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8113:2:5", - "type": "", - "value": "32" - }, - { - "name": "returndata", - "nodeType": "YulIdentifier", - "src": "8117:10:5" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8109:3:5" - }, - "nodeType": "YulFunctionCall", - "src": "8109:19:5" - }, - { - "name": "returndata_size", - "nodeType": "YulIdentifier", - "src": "8130:15:5" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "8102:6:5" - }, - "nodeType": "YulFunctionCall", - "src": "8102:44:5" - }, - "nodeType": "YulExpressionStatement", - "src": "8102:44:5" - } - ] - }, - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 1422, - "isOffset": false, - "isSlot": false, - "src": "8070:10:5", - "valueSize": 1 - }, - { - "declaration": 1422, - "isOffset": false, - "isSlot": false, - "src": "8117:10:5", - "valueSize": 1 - } - ], - "id": 1437, - "nodeType": "InlineAssembly", - "src": "8010:154:5" - } - ] - } - } - ] - }, - "id": 1446, - "nodeType": "IfStatement", - "src": "7731:516:5", - "trueBody": { - "id": 1432, - "nodeType": "Block", - "src": "7744:42:5", - "statements": [ - { - "expression": { - "id": 1430, - "name": "returndata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1422, - "src": "7765:10:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "functionReturnParameters": 1428, - "id": 1431, - "nodeType": "Return", - "src": "7758:17:5" - } - ] - } - } - ] - }, - "documentation": { - "id": 1418, - "nodeType": "StructuredDocumentation", - "src": "7347:209:5", - "text": " @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the\n revert reason using the provided one.\n _Available since v4.3._" - }, - "id": 1448, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "verifyCallResult", - "nameLocation": "7570:16:5", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1425, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1420, - "mutability": "mutable", - "name": "success", - "nameLocation": "7601:7:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7596:12:5", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1419, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7596:4:5", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1422, - "mutability": "mutable", - "name": "returndata", - "nameLocation": "7631:10:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7618:23:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1421, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7618:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1424, - "mutability": "mutable", - "name": "errorMessage", - "nameLocation": "7665:12:5", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7651:26:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1423, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7651:6:5", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "7586:97:5" - }, - "returnParameters": { - "id": 1428, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1427, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1448, - "src": "7707:12:5", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1426, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "7707:5:5", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "7706:14:5" - }, - "scope": 1449, - "src": "7561:692:5", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1450, - "src": "194:8061:5", - "usedErrors": [] - } - ], - "src": "101:8155:5" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.998Z", - "devdoc": { - "details": "Collection of functions related to the address type", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/Context.json b/src/abis/Context.json deleted file mode 100644 index eeaa344..0000000 --- a/src/abis/Context.json +++ /dev/null @@ -1,508 +0,0 @@ -{ - "contractName": "Context", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Context.sol\":\"Context\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Provides information about the current execution context, including the\n * sender of the transaction and its data. While these are generally available\n * via msg.sender and msg.data, they should not be accessed in such a direct\n * manner, since when dealing with meta-transactions the account sending and\n * paying for execution may not be the actual sender (as far as an application\n * is concerned).\n *\n * This contract is only required for intermediate, library-like contracts.\n */\nabstract contract Context {\n function _msgSender() internal view virtual returns (address) {\n return msg.sender;\n }\n\n function _msgData() internal view virtual returns (bytes calldata) {\n return msg.data;\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Context.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "exportedSymbols": { - "Context": [ - 1471 - ] - }, - "id": 1472, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1451, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "86:23:6" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Context", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1452, - "nodeType": "StructuredDocumentation", - "src": "111:496:6", - "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." - }, - "fullyImplemented": true, - "id": 1471, - "linearizedBaseContracts": [ - 1471 - ], - "name": "Context", - "nameLocation": "626:7:6", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1460, - "nodeType": "Block", - "src": "702:34:6", - "statements": [ - { - "expression": { - "expression": { - "id": 1457, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "719:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "719:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1456, - "id": 1459, - "nodeType": "Return", - "src": "712:17:6" - } - ] - }, - "id": 1461, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgSender", - "nameLocation": "649:10:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1453, - "nodeType": "ParameterList", - "parameters": [], - "src": "659:2:6" - }, - "returnParameters": { - "id": 1456, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1455, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1461, - "src": "693:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1454, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "693:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "692:9:6" - }, - "scope": 1471, - "src": "640:96:6", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1469, - "nodeType": "Block", - "src": "809:32:6", - "statements": [ - { - "expression": { - "expression": { - "id": 1466, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "826:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "data", - "nodeType": "MemberAccess", - "src": "826:8:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "functionReturnParameters": 1465, - "id": 1468, - "nodeType": "Return", - "src": "819:15:6" - } - ] - }, - "id": 1470, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgData", - "nameLocation": "751:8:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1462, - "nodeType": "ParameterList", - "parameters": [], - "src": "759:2:6" - }, - "returnParameters": { - "id": 1465, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1464, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1470, - "src": "793:14:6", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1463, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "793:5:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "792:16:6" - }, - "scope": 1471, - "src": "742:99:6", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1472, - "src": "608:235:6", - "usedErrors": [] - } - ], - "src": "86:758:6" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "exportedSymbols": { - "Context": [ - 1471 - ] - }, - "id": 1472, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1451, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "86:23:6" - }, - { - "abstract": true, - "baseContracts": [], - "canonicalName": "Context", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1452, - "nodeType": "StructuredDocumentation", - "src": "111:496:6", - "text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts." - }, - "fullyImplemented": true, - "id": 1471, - "linearizedBaseContracts": [ - 1471 - ], - "name": "Context", - "nameLocation": "626:7:6", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1460, - "nodeType": "Block", - "src": "702:34:6", - "statements": [ - { - "expression": { - "expression": { - "id": 1457, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "719:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "719:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 1456, - "id": 1459, - "nodeType": "Return", - "src": "712:17:6" - } - ] - }, - "id": 1461, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgSender", - "nameLocation": "649:10:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1453, - "nodeType": "ParameterList", - "parameters": [], - "src": "659:2:6" - }, - "returnParameters": { - "id": 1456, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1455, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1461, - "src": "693:7:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1454, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "693:7:6", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "692:9:6" - }, - "scope": 1471, - "src": "640:96:6", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 1469, - "nodeType": "Block", - "src": "809:32:6", - "statements": [ - { - "expression": { - "expression": { - "id": 1466, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "826:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1467, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "data", - "nodeType": "MemberAccess", - "src": "826:8:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes calldata" - } - }, - "functionReturnParameters": 1465, - "id": 1468, - "nodeType": "Return", - "src": "819:15:6" - } - ] - }, - "id": 1470, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_msgData", - "nameLocation": "751:8:6", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1462, - "nodeType": "ParameterList", - "parameters": [], - "src": "759:2:6" - }, - "returnParameters": { - "id": 1465, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1464, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1470, - "src": "793:14:6", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1463, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "793:5:6", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "792:16:6" - }, - "scope": 1471, - "src": "742:99:6", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1472, - "src": "608:235:6", - "usedErrors": [] - } - ], - "src": "86:758:6" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:04.000Z", - "devdoc": { - "details": "Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned). This contract is only required for intermediate, library-like contracts.", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/Counters.json b/src/abis/Counters.json deleted file mode 100644 index 9b7a414..0000000 --- a/src/abis/Counters.json +++ /dev/null @@ -1,1688 +0,0 @@ -{ - "contractName": "Counters", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"Matt Condon (@shrugs)\",\"details\":\"Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number of elements in a mapping, issuing ERC721 ids, or counting request ids. Include with `using Counters for Counters.Counter;`\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Counters\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Counters.sol\":\"Counters\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Counters.sol\":{\"keccak256\":\"0xf0018c2440fbe238dd3a8732fa8e17a0f9dce84d31451dc8a32f6d62b349c9f1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e1c62884d55b70f3ae5432b44bb3166ad71ae3acd19c57ab6ddc3c87c325ee\",\"dweb:/ipfs/QmezuXg5GK5oeA4F91EZhozBFekhq5TD966bHPH18cCqhu\"]}},\"version\":1}", - "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220b3bd8466966edddb6c67e6f57df0b33d82845c8db679ce1fa749a77482818ebc64736f6c634300080d0033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220b3bd8466966edddb6c67e6f57df0b33d82845c8db679ce1fa749a77482818ebc64736f6c634300080d0033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "424:971:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "424:971:7:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/Counters.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @title Counters\n * @author Matt Condon (@shrugs)\n * @dev Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number\n * of elements in a mapping, issuing ERC721 ids, or counting request ids.\n *\n * Include with `using Counters for Counters.Counter;`\n */\nlibrary Counters {\n struct Counter {\n // This variable should never be directly accessed by users of the library: interactions must be restricted to\n // the library's function. As of Solidity v0.5.2, this cannot be enforced, though there is a proposal to add\n // this feature: see https://github.com/ethereum/solidity/issues/4637\n uint256 _value; // default: 0\n }\n\n function current(Counter storage counter) internal view returns (uint256) {\n return counter._value;\n }\n\n function increment(Counter storage counter) internal {\n unchecked {\n counter._value += 1;\n }\n }\n\n function decrement(Counter storage counter) internal {\n uint256 value = counter._value;\n require(value > 0, \"Counter: decrement overflow\");\n unchecked {\n counter._value = value - 1;\n }\n }\n\n function reset(Counter storage counter) internal {\n counter._value = 0;\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Counters.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Counters.sol", - "exportedSymbols": { - "Counters": [ - 1545 - ] - }, - "id": 1546, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1473, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "87:23:7" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Counters", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1474, - "nodeType": "StructuredDocumentation", - "src": "112:311:7", - "text": " @title Counters\n @author Matt Condon (@shrugs)\n @dev Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number\n of elements in a mapping, issuing ERC721 ids, or counting request ids.\n Include with `using Counters for Counters.Counter;`" - }, - "fullyImplemented": true, - "id": 1545, - "linearizedBaseContracts": [ - 1545 - ], - "name": "Counters", - "nameLocation": "432:8:7", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "Counters.Counter", - "id": 1477, - "members": [ - { - "constant": false, - "id": 1476, - "mutability": "mutable", - "name": "_value", - "nameLocation": "794:6:7", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "786:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1475, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "786:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "Counter", - "nameLocation": "454:7:7", - "nodeType": "StructDefinition", - "scope": 1545, - "src": "447:374:7", - "visibility": "public" - }, - { - "body": { - "id": 1488, - "nodeType": "Block", - "src": "901:38:7", - "statements": [ - { - "expression": { - "expression": { - "id": 1485, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "918:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "918:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1484, - "id": 1487, - "nodeType": "Return", - "src": "911:21:7" - } - ] - }, - "id": 1489, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "current", - "nameLocation": "836:7:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1480, - "mutability": "mutable", - "name": "counter", - "nameLocation": "860:7:7", - "nodeType": "VariableDeclaration", - "scope": 1489, - "src": "844:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1479, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1478, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "844:7:7" - }, - "referencedDeclaration": 1477, - "src": "844:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "843:25:7" - }, - "returnParameters": { - "id": 1484, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1483, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1489, - "src": "892:7:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1482, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "892:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "891:9:7" - }, - "scope": 1545, - "src": "827:112:7", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1502, - "nodeType": "Block", - "src": "998:70:7", - "statements": [ - { - "id": 1501, - "nodeType": "UncheckedBlock", - "src": "1008:54:7", - "statements": [ - { - "expression": { - "id": 1499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1495, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1492, - "src": "1032:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1497, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1032:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 1498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1050:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1032:19:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1500, - "nodeType": "ExpressionStatement", - "src": "1032:19:7" - } - ] - } - ] - }, - "id": 1503, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "increment", - "nameLocation": "954:9:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1492, - "mutability": "mutable", - "name": "counter", - "nameLocation": "980:7:7", - "nodeType": "VariableDeclaration", - "scope": 1503, - "src": "964:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1491, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1490, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "964:7:7" - }, - "referencedDeclaration": 1477, - "src": "964:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "963:25:7" - }, - "returnParameters": { - "id": 1494, - "nodeType": "ParameterList", - "parameters": [], - "src": "998:0:7" - }, - "scope": 1545, - "src": "945:123:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1530, - "nodeType": "Block", - "src": "1127:176:7", - "statements": [ - { - "assignments": [ - 1510 - ], - "declarations": [ - { - "constant": false, - "id": 1510, - "mutability": "mutable", - "name": "value", - "nameLocation": "1145:5:7", - "nodeType": "VariableDeclaration", - "scope": 1530, - "src": "1137:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1509, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1137:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1513, - "initialValue": { - "expression": { - "id": 1511, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1506, - "src": "1153:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1153:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1137:30:7" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1515, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "1185:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1516, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1193:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1185:9:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "436f756e7465723a2064656372656d656e74206f766572666c6f77", - "id": 1518, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1196:29:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f", - "typeString": "literal_string \"Counter: decrement overflow\"" - }, - "value": "Counter: decrement overflow" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f", - "typeString": "literal_string \"Counter: decrement overflow\"" - } - ], - "id": 1514, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1177:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1177:49:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1520, - "nodeType": "ExpressionStatement", - "src": "1177:49:7" - }, - { - "id": 1529, - "nodeType": "UncheckedBlock", - "src": "1236:61:7", - "statements": [ - { - "expression": { - "id": 1527, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1521, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1506, - "src": "1260:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1523, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1260:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1524, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "1277:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1525, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1285:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1277:9:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1260:26:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1528, - "nodeType": "ExpressionStatement", - "src": "1260:26:7" - } - ] - } - ] - }, - "id": 1531, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decrement", - "nameLocation": "1083:9:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1507, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1506, - "mutability": "mutable", - "name": "counter", - "nameLocation": "1109:7:7", - "nodeType": "VariableDeclaration", - "scope": 1531, - "src": "1093:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1505, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1504, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "1093:7:7" - }, - "referencedDeclaration": 1477, - "src": "1093:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "1092:25:7" - }, - "returnParameters": { - "id": 1508, - "nodeType": "ParameterList", - "parameters": [], - "src": "1127:0:7" - }, - "scope": 1545, - "src": "1074:229:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1543, - "nodeType": "Block", - "src": "1358:35:7", - "statements": [ - { - "expression": { - "id": 1541, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1537, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1534, - "src": "1368:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1539, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1368:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 1540, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1385:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1368:18:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1542, - "nodeType": "ExpressionStatement", - "src": "1368:18:7" - } - ] - }, - "id": 1544, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "reset", - "nameLocation": "1318:5:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1535, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1534, - "mutability": "mutable", - "name": "counter", - "nameLocation": "1340:7:7", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "1324:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1533, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1532, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "1324:7:7" - }, - "referencedDeclaration": 1477, - "src": "1324:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "1323:25:7" - }, - "returnParameters": { - "id": 1536, - "nodeType": "ParameterList", - "parameters": [], - "src": "1358:0:7" - }, - "scope": 1545, - "src": "1309:84:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1546, - "src": "424:971:7", - "usedErrors": [] - } - ], - "src": "87:1309:7" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/Counters.sol", - "exportedSymbols": { - "Counters": [ - 1545 - ] - }, - "id": 1546, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1473, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "87:23:7" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Counters", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1474, - "nodeType": "StructuredDocumentation", - "src": "112:311:7", - "text": " @title Counters\n @author Matt Condon (@shrugs)\n @dev Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number\n of elements in a mapping, issuing ERC721 ids, or counting request ids.\n Include with `using Counters for Counters.Counter;`" - }, - "fullyImplemented": true, - "id": 1545, - "linearizedBaseContracts": [ - 1545 - ], - "name": "Counters", - "nameLocation": "432:8:7", - "nodeType": "ContractDefinition", - "nodes": [ - { - "canonicalName": "Counters.Counter", - "id": 1477, - "members": [ - { - "constant": false, - "id": 1476, - "mutability": "mutable", - "name": "_value", - "nameLocation": "794:6:7", - "nodeType": "VariableDeclaration", - "scope": 1477, - "src": "786:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1475, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "786:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "name": "Counter", - "nameLocation": "454:7:7", - "nodeType": "StructDefinition", - "scope": 1545, - "src": "447:374:7", - "visibility": "public" - }, - { - "body": { - "id": 1488, - "nodeType": "Block", - "src": "901:38:7", - "statements": [ - { - "expression": { - "expression": { - "id": 1485, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1480, - "src": "918:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1486, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "918:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 1484, - "id": 1487, - "nodeType": "Return", - "src": "911:21:7" - } - ] - }, - "id": 1489, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "current", - "nameLocation": "836:7:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1481, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1480, - "mutability": "mutable", - "name": "counter", - "nameLocation": "860:7:7", - "nodeType": "VariableDeclaration", - "scope": 1489, - "src": "844:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1479, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1478, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "844:7:7" - }, - "referencedDeclaration": 1477, - "src": "844:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "843:25:7" - }, - "returnParameters": { - "id": 1484, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1483, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1489, - "src": "892:7:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1482, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "892:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "891:9:7" - }, - "scope": 1545, - "src": "827:112:7", - "stateMutability": "view", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1502, - "nodeType": "Block", - "src": "998:70:7", - "statements": [ - { - "id": 1501, - "nodeType": "UncheckedBlock", - "src": "1008:54:7", - "statements": [ - { - "expression": { - "id": 1499, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1495, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1492, - "src": "1032:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1497, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1032:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 1498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1050:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1032:19:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1500, - "nodeType": "ExpressionStatement", - "src": "1032:19:7" - } - ] - } - ] - }, - "id": 1503, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "increment", - "nameLocation": "954:9:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1493, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1492, - "mutability": "mutable", - "name": "counter", - "nameLocation": "980:7:7", - "nodeType": "VariableDeclaration", - "scope": 1503, - "src": "964:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1491, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1490, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "964:7:7" - }, - "referencedDeclaration": 1477, - "src": "964:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "963:25:7" - }, - "returnParameters": { - "id": 1494, - "nodeType": "ParameterList", - "parameters": [], - "src": "998:0:7" - }, - "scope": 1545, - "src": "945:123:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1530, - "nodeType": "Block", - "src": "1127:176:7", - "statements": [ - { - "assignments": [ - 1510 - ], - "declarations": [ - { - "constant": false, - "id": 1510, - "mutability": "mutable", - "name": "value", - "nameLocation": "1145:5:7", - "nodeType": "VariableDeclaration", - "scope": 1530, - "src": "1137:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1509, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1137:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1513, - "initialValue": { - "expression": { - "id": 1511, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1506, - "src": "1153:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1512, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1153:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1137:30:7" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1517, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1515, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "1185:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1516, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1193:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1185:9:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "436f756e7465723a2064656372656d656e74206f766572666c6f77", - "id": 1518, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1196:29:7", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f", - "typeString": "literal_string \"Counter: decrement overflow\"" - }, - "value": "Counter: decrement overflow" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f", - "typeString": "literal_string \"Counter: decrement overflow\"" - } - ], - "id": 1514, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1177:7:7", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1177:49:7", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1520, - "nodeType": "ExpressionStatement", - "src": "1177:49:7" - }, - { - "id": 1529, - "nodeType": "UncheckedBlock", - "src": "1236:61:7", - "statements": [ - { - "expression": { - "id": 1527, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1521, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1506, - "src": "1260:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1523, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1260:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1524, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1510, - "src": "1277:5:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "hexValue": "31", - "id": 1525, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1285:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1277:9:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1260:26:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1528, - "nodeType": "ExpressionStatement", - "src": "1260:26:7" - } - ] - } - ] - }, - "id": 1531, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "decrement", - "nameLocation": "1083:9:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1507, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1506, - "mutability": "mutable", - "name": "counter", - "nameLocation": "1109:7:7", - "nodeType": "VariableDeclaration", - "scope": 1531, - "src": "1093:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1505, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1504, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "1093:7:7" - }, - "referencedDeclaration": 1477, - "src": "1093:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "1092:25:7" - }, - "returnParameters": { - "id": 1508, - "nodeType": "ParameterList", - "parameters": [], - "src": "1127:0:7" - }, - "scope": 1545, - "src": "1074:229:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1543, - "nodeType": "Block", - "src": "1358:35:7", - "statements": [ - { - "expression": { - "id": 1541, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "expression": { - "id": 1537, - "name": "counter", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1534, - "src": "1368:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter storage pointer" - } - }, - "id": 1539, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "_value", - "nodeType": "MemberAccess", - "referencedDeclaration": 1476, - "src": "1368:14:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 1540, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1385:1:7", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1368:18:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1542, - "nodeType": "ExpressionStatement", - "src": "1368:18:7" - } - ] - }, - "id": 1544, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "reset", - "nameLocation": "1318:5:7", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1535, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1534, - "mutability": "mutable", - "name": "counter", - "nameLocation": "1340:7:7", - "nodeType": "VariableDeclaration", - "scope": 1544, - "src": "1324:23:7", - "stateVariable": false, - "storageLocation": "storage", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - }, - "typeName": { - "id": 1533, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1532, - "name": "Counter", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1477, - "src": "1324:7:7" - }, - "referencedDeclaration": 1477, - "src": "1324:7:7", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", - "typeString": "struct Counters.Counter" - } - }, - "visibility": "internal" - } - ], - "src": "1323:25:7" - }, - "returnParameters": { - "id": 1536, - "nodeType": "ParameterList", - "parameters": [], - "src": "1358:0:7" - }, - "scope": 1545, - "src": "1309:84:7", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1546, - "src": "424:971:7", - "usedErrors": [] - } - ], - "src": "87:1309:7" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:04.001Z", - "devdoc": { - "author": "Matt Condon (@shrugs)", - "details": "Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number of elements in a mapping, issuing ERC721 ids, or counting request ids. Include with `using Counters for Counters.Counter;`", - "kind": "dev", - "methods": {}, - "title": "Counters", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/ERC165.json b/src/abis/ERC165.json deleted file mode 100644 index 3c28c92..0000000 --- a/src/abis/ERC165.json +++ /dev/null @@ -1,622 +0,0 @@ -{ - "contractName": "ERC165", - "abi": [ - { - "inputs": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC165} interface. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check for the additional interface id that will be supported. For example: ```solidity function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId); } ``` Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@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\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./IERC165.sol\";\n\n/**\n * @dev Implementation of the {IERC165} interface.\n *\n * Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n * for the additional interface id that will be supported. For example:\n *\n * ```solidity\n * function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n * return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n * }\n * ```\n *\n * Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.\n */\nabstract contract ERC165 is IERC165 {\n /**\n * @dev See {IERC165-supportsInterface}.\n */\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(IERC165).interfaceId;\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", - "exportedSymbols": { - "ERC165": [ - 1772 - ], - "IERC165": [ - 1784 - ] - }, - "id": 1773, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1750, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "99:23:9" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "file": "./IERC165.sol", - "id": 1751, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1773, - "sourceUnit": 1785, - "src": "124:23:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 1753, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "754:7:9" - }, - "id": 1754, - "nodeType": "InheritanceSpecifier", - "src": "754:7:9" - } - ], - "canonicalName": "ERC165", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1752, - "nodeType": "StructuredDocumentation", - "src": "149:576:9", - "text": " @dev Implementation of the {IERC165} interface.\n Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n for the additional interface id that will be supported. For example:\n ```solidity\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n }\n ```\n Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation." - }, - "fullyImplemented": true, - "id": 1772, - "linearizedBaseContracts": [ - 1772, - 1784 - ], - "name": "ERC165", - "nameLocation": "744:6:9", - "nodeType": "ContractDefinition", - "nodes": [ - { - "baseFunctions": [ - 1783 - ], - "body": { - "id": 1770, - "nodeType": "Block", - "src": "920:64:9", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1763, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1757, - "src": "937:11:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 1765, - "name": "IERC165", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "957:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC165_$1784_$", - "typeString": "type(contract IERC165)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC165_$1784_$", - "typeString": "type(contract IERC165)" - } - ], - "id": 1764, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "952:4:9", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1766, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "952:13:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC165_$1784", - "typeString": "type(contract IERC165)" - } - }, - "id": 1767, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "952:25:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "937:40:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1762, - "id": 1769, - "nodeType": "Return", - "src": "930:47:9" - } - ] - }, - "documentation": { - "id": 1755, - "nodeType": "StructuredDocumentation", - "src": "768:56:9", - "text": " @dev See {IERC165-supportsInterface}." - }, - "functionSelector": "01ffc9a7", - "id": 1771, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "838:17:9", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1759, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "896:8:9" - }, - "parameters": { - "id": 1758, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1757, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "863:11:9", - "nodeType": "VariableDeclaration", - "scope": 1771, - "src": "856:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1756, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "856:6:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "855:20:9" - }, - "returnParameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1761, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1771, - "src": "914:4:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1760, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "914:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "913:6:9" - }, - "scope": 1772, - "src": "829:155:9", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - } - ], - "scope": 1773, - "src": "726:260:9", - "usedErrors": [] - } - ], - "src": "99:888:9" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", - "exportedSymbols": { - "ERC165": [ - 1772 - ], - "IERC165": [ - 1784 - ] - }, - "id": 1773, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1750, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "99:23:9" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "file": "./IERC165.sol", - "id": 1751, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1773, - "sourceUnit": 1785, - "src": "124:23:9", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 1753, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "754:7:9" - }, - "id": 1754, - "nodeType": "InheritanceSpecifier", - "src": "754:7:9" - } - ], - "canonicalName": "ERC165", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1752, - "nodeType": "StructuredDocumentation", - "src": "149:576:9", - "text": " @dev Implementation of the {IERC165} interface.\n Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n for the additional interface id that will be supported. For example:\n ```solidity\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n }\n ```\n Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation." - }, - "fullyImplemented": true, - "id": 1772, - "linearizedBaseContracts": [ - 1772, - 1784 - ], - "name": "ERC165", - "nameLocation": "744:6:9", - "nodeType": "ContractDefinition", - "nodes": [ - { - "baseFunctions": [ - 1783 - ], - "body": { - "id": 1770, - "nodeType": "Block", - "src": "920:64:9", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 1768, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1763, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1757, - "src": "937:11:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 1765, - "name": "IERC165", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "957:7:9", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC165_$1784_$", - "typeString": "type(contract IERC165)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC165_$1784_$", - "typeString": "type(contract IERC165)" - } - ], - "id": 1764, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "952:4:9", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 1766, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "952:13:9", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC165_$1784", - "typeString": "type(contract IERC165)" - } - }, - "id": 1767, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "952:25:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "937:40:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 1762, - "id": 1769, - "nodeType": "Return", - "src": "930:47:9" - } - ] - }, - "documentation": { - "id": 1755, - "nodeType": "StructuredDocumentation", - "src": "768:56:9", - "text": " @dev See {IERC165-supportsInterface}." - }, - "functionSelector": "01ffc9a7", - "id": 1771, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "838:17:9", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1759, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "896:8:9" - }, - "parameters": { - "id": 1758, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1757, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "863:11:9", - "nodeType": "VariableDeclaration", - "scope": 1771, - "src": "856:18:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1756, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "856:6:9", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "855:20:9" - }, - "returnParameters": { - "id": 1762, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1761, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1771, - "src": "914:4:9", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1760, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "914:4:9", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "913:6:9" - }, - "scope": 1772, - "src": "829:155:9", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - } - ], - "scope": 1773, - "src": "726:260:9", - "usedErrors": [] - } - ], - "src": "99:888:9" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:04.008Z", - "devdoc": { - "details": "Implementation of the {IERC165} interface. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check for the additional interface id that will be supported. For example: ```solidity function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId); } ``` Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.", - "kind": "dev", - "methods": { - "supportsInterface(bytes4)": { - "details": "See {IERC165-supportsInterface}." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/ERC721.json b/src/abis/ERC721.json deleted file mode 100644 index 5add0cc..0000000 --- a/src/abis/ERC721.json +++ /dev/null @@ -1,37745 +0,0 @@ -{ - "contractName": "ERC721", - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "name_", - "type": "string" - }, - { - "internalType": "string", - "name": "symbol_", - "type": "string" - } - ], - "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": "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": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "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": "ownerOf", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "tokenURI", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "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": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "getApproved", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "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": "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": "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": "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" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"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\":\"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\":[{\"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\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"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\":\"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\":\"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\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"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\"}],\"devdoc\":{\"details\":\"Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including the Metadata extension, but not including the Enumerable extension, which is available separately as {ERC721Enumerable}.\",\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"constructor\":{\"details\":\"Initializes the contract by setting a `name` and a `symbol` to the token collection.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenURI(uint256)\":{\"details\":\"See {IERC721Metadata-tokenURI}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":\"ERC721\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x921f012325281f7d81e29c53a13824cf6c2c5d77232065d0d4f3f912e97af6ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7dbcedc364fce0ab5e54d21d4cbd91a97959f52c0674cf5c36a314bb58308f62\",\"dweb:/ipfs/QmfYpqHKtu3bSQ9FGvLwzdxRNykStpVPtoLNTaM1KBKj6E\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x0d4de01fe5360c38b4ad2b0822a12722958428f5138a7ff47c1720eb6fa52bba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77724cecdfba8814632ab58737c2b0f2d4ad2d532bc614aee559b5593c1152f0\",\"dweb:/ipfs/QmUcE6gXyv7CQh4sUdcDABYKGTovTe1zLMZSEq95nkc3ph\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x2ccf9d2313a313d41a791505f2b5abfdc62191b5d4334f7f7a82691c088a1c87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a57d0854b2fdce6ebff933a48dca2445643d1eccfc27f00292e937f26c6a58\",\"dweb:/ipfs/QmW45rZooS9TqR4YXUbjRbtf2Bpb5ouSarBvfW1LdGprvV\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x32c202bd28995dd20c4347b7c6467a6d3241c74c8ad3edcbb610cd9205916c45\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8179c356adb19e70d6b31a1eedc8c5c7f0c00e669e2540f4099e3844c6074d30\",\"dweb:/ipfs/QmWFbivarEobbqhS1go64ootVuHfVohBseerYy9FTEd1W2\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}", - "bytecode": "0x60806040523480156200001157600080fd5b506040516200278d3803806200278d8339818101604052810190620000379190620002be565b81600090805190602001906200004f92919062000071565b5080600190805190602001906200006892919062000071565b505050620003a7565b8280546200007f9062000372565b90600052602060002090601f016020900481019282620000a35760008555620000ef565b82601f10620000be57805160ff1916838001178555620000ef565b82800160010185558215620000ef579182015b82811115620000ee578251825591602001919060010190620000d1565b5b509050620000fe919062000102565b5090565b5b808211156200011d57600081600090555060010162000103565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200018a826200013f565b810181811067ffffffffffffffff82111715620001ac57620001ab62000150565b5b80604052505050565b6000620001c162000121565b9050620001cf82826200017f565b919050565b600067ffffffffffffffff821115620001f257620001f162000150565b5b620001fd826200013f565b9050602081019050919050565b60005b838110156200022a5780820151818401526020810190506200020d565b838111156200023a576000848401525b50505050565b6000620002576200025184620001d4565b620001b5565b9050828152602081018484840111156200027657620002756200013a565b5b620002838482856200020a565b509392505050565b600082601f830112620002a357620002a262000135565b5b8151620002b584826020860162000240565b91505092915050565b60008060408385031215620002d857620002d76200012b565b5b600083015167ffffffffffffffff811115620002f957620002f862000130565b5b62000307858286016200028b565b925050602083015167ffffffffffffffff8111156200032b576200032a62000130565b5b62000339858286016200028b565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200038b57607f821691505b602082108103620003a157620003a062000343565b5b50919050565b6123d680620003b76000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610224578063b88d4fde14610240578063c87b56dd1461025c578063e985e9c51461028c576100cf565b80636352211e146101a657806370a08231146101d657806395d89b4114610206576100cf565b806301ffc9a7146100d457806306fdde0314610104578063081812fc14610122578063095ea7b31461015257806323b872dd1461016e57806342842e0e1461018a575b600080fd5b6100ee60048036038101906100e99190611433565b6102bc565b6040516100fb919061147b565b60405180910390f35b61010c61039e565b604051610119919061152f565b60405180910390f35b61013c60048036038101906101379190611587565b610430565b60405161014991906115f5565b60405180910390f35b61016c6004803603810190610167919061163c565b6104b5565b005b6101886004803603810190610183919061167c565b6105cc565b005b6101a4600480360381019061019f919061167c565b61062c565b005b6101c060048036038101906101bb9190611587565b61064c565b6040516101cd91906115f5565b60405180910390f35b6101f060048036038101906101eb91906116cf565b6106fd565b6040516101fd919061170b565b60405180910390f35b61020e6107b4565b60405161021b919061152f565b60405180910390f35b61023e60048036038101906102399190611752565b610846565b005b61025a600480360381019061025591906118c7565b61085c565b005b61027660048036038101906102719190611587565b6108be565b604051610283919061152f565b60405180910390f35b6102a660048036038101906102a1919061194a565b610965565b6040516102b3919061147b565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061038757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103975750610396826109f9565b5b9050919050565b6060600080546103ad906119b9565b80601f01602080910402602001604051908101604052809291908181526020018280546103d9906119b9565b80156104265780601f106103fb57610100808354040283529160200191610426565b820191906000526020600020905b81548152906001019060200180831161040957829003601f168201915b5050505050905090565b600061043b82610a63565b61047a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047190611a5c565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104c08261064c565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610530576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052790611aee565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661054f610acf565b73ffffffffffffffffffffffffffffffffffffffff16148061057e575061057d81610578610acf565b610965565b5b6105bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105b490611b80565b60405180910390fd5b6105c78383610ad7565b505050565b6105dd6105d7610acf565b82610b90565b61061c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061390611c12565b60405180910390fd5b610627838383610c6e565b505050565b6106478383836040518060200160405280600081525061085c565b505050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb90611ca4565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361076d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076490611d36565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546107c3906119b9565b80601f01602080910402602001604051908101604052809291908181526020018280546107ef906119b9565b801561083c5780601f106108115761010080835404028352916020019161083c565b820191906000526020600020905b81548152906001019060200180831161081f57829003601f168201915b5050505050905090565b610858610851610acf565b8383610ed4565b5050565b61086d610867610acf565b83610b90565b6108ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a390611c12565b60405180910390fd5b6108b884848484611040565b50505050565b60606108c982610a63565b610908576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ff90611dc8565b60405180910390fd5b600061091261109c565b90506000815111610932576040518060200160405280600081525061095d565b8061093c846110b3565b60405160200161094d929190611e24565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610b4a8361064c565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610b9b82610a63565b610bda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd190611eba565b60405180910390fd5b6000610be58361064c565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c275750610c268185610965565b5b80610c6557508373ffffffffffffffffffffffffffffffffffffffff16610c4d84610430565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610c8e8261064c565b73ffffffffffffffffffffffffffffffffffffffff1614610ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdb90611f4c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a90611fde565b60405180910390fd5b610d5e838383611213565b610d69600082610ad7565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db9919061202d565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e109190612061565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ecf838383611218565b505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3990612103565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611033919061147b565b60405180910390a3505050565b61104b848484610c6e565b6110578484848461121d565b611096576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108d90612195565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b6060600082036110fa576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061120e565b600082905060005b6000821461112c578080611115906121b5565b915050600a82611125919061222c565b9150611102565b60008167ffffffffffffffff8111156111485761114761179c565b5b6040519080825280601f01601f19166020018201604052801561117a5781602001600182028036833780820191505090505b5090505b6000851461120757600182611193919061202d565b9150600a856111a2919061225d565b60306111ae9190612061565b60f81b8183815181106111c4576111c361228e565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611200919061222c565b945061117e565b8093505050505b919050565b505050565b505050565b600061123e8473ffffffffffffffffffffffffffffffffffffffff166113a4565b15611397578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611267610acf565b8786866040518563ffffffff1660e01b81526004016112899493929190612312565b6020604051808303816000875af19250505080156112c557506040513d601f19601f820116820180604052508101906112c29190612373565b60015b611347573d80600081146112f5576040519150601f19603f3d011682016040523d82523d6000602084013e6112fa565b606091505b50600081510361133f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133690612195565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061139c565b600190505b949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611410816113db565b811461141b57600080fd5b50565b60008135905061142d81611407565b92915050565b600060208284031215611449576114486113d1565b5b60006114578482850161141e565b91505092915050565b60008115159050919050565b61147581611460565b82525050565b6000602082019050611490600083018461146c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156114d05780820151818401526020810190506114b5565b838111156114df576000848401525b50505050565b6000601f19601f8301169050919050565b600061150182611496565b61150b81856114a1565b935061151b8185602086016114b2565b611524816114e5565b840191505092915050565b6000602082019050818103600083015261154981846114f6565b905092915050565b6000819050919050565b61156481611551565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b60006020828403121561159d5761159c6113d1565b5b60006115ab84828501611572565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115df826115b4565b9050919050565b6115ef816115d4565b82525050565b600060208201905061160a60008301846115e6565b92915050565b611619816115d4565b811461162457600080fd5b50565b60008135905061163681611610565b92915050565b60008060408385031215611653576116526113d1565b5b600061166185828601611627565b925050602061167285828601611572565b9150509250929050565b600080600060608486031215611695576116946113d1565b5b60006116a386828701611627565b93505060206116b486828701611627565b92505060406116c586828701611572565b9150509250925092565b6000602082840312156116e5576116e46113d1565b5b60006116f384828501611627565b91505092915050565b61170581611551565b82525050565b600060208201905061172060008301846116fc565b92915050565b61172f81611460565b811461173a57600080fd5b50565b60008135905061174c81611726565b92915050565b60008060408385031215611769576117686113d1565b5b600061177785828601611627565b92505060206117888582860161173d565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6117d4826114e5565b810181811067ffffffffffffffff821117156117f3576117f261179c565b5b80604052505050565b60006118066113c7565b905061181282826117cb565b919050565b600067ffffffffffffffff8211156118325761183161179c565b5b61183b826114e5565b9050602081019050919050565b82818337600083830152505050565b600061186a61186584611817565b6117fc565b90508281526020810184848401111561188657611885611797565b5b611891848285611848565b509392505050565b600082601f8301126118ae576118ad611792565b5b81356118be848260208601611857565b91505092915050565b600080600080608085870312156118e1576118e06113d1565b5b60006118ef87828801611627565b945050602061190087828801611627565b935050604061191187828801611572565b925050606085013567ffffffffffffffff811115611932576119316113d6565b5b61193e87828801611899565b91505092959194509250565b60008060408385031215611961576119606113d1565b5b600061196f85828601611627565b925050602061198085828601611627565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119d157607f821691505b6020821081036119e4576119e361198a565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611a46602c836114a1565b9150611a51826119ea565b604082019050919050565b60006020820190508181036000830152611a7581611a39565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ad86021836114a1565b9150611ae382611a7c565b604082019050919050565b60006020820190508181036000830152611b0781611acb565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000611b6a6038836114a1565b9150611b7582611b0e565b604082019050919050565b60006020820190508181036000830152611b9981611b5d565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000611bfc6031836114a1565b9150611c0782611ba0565b604082019050919050565b60006020820190508181036000830152611c2b81611bef565b9050919050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b6000611c8e6029836114a1565b9150611c9982611c32565b604082019050919050565b60006020820190508181036000830152611cbd81611c81565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000611d20602a836114a1565b9150611d2b82611cc4565b604082019050919050565b60006020820190508181036000830152611d4f81611d13565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000611db2602f836114a1565b9150611dbd82611d56565b604082019050919050565b60006020820190508181036000830152611de181611da5565b9050919050565b600081905092915050565b6000611dfe82611496565b611e088185611de8565b9350611e188185602086016114b2565b80840191505092915050565b6000611e308285611df3565b9150611e3c8284611df3565b91508190509392505050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611ea4602c836114a1565b9150611eaf82611e48565b604082019050919050565b60006020820190508181036000830152611ed381611e97565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611f366025836114a1565b9150611f4182611eda565b604082019050919050565b60006020820190508181036000830152611f6581611f29565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611fc86024836114a1565b9150611fd382611f6c565b604082019050919050565b60006020820190508181036000830152611ff781611fbb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061203882611551565b915061204383611551565b92508282101561205657612055611ffe565b5b828203905092915050565b600061206c82611551565b915061207783611551565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156120ac576120ab611ffe565b5b828201905092915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006120ed6019836114a1565b91506120f8826120b7565b602082019050919050565b6000602082019050818103600083015261211c816120e0565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061217f6032836114a1565b915061218a82612123565b604082019050919050565b600060208201905081810360008301526121ae81612172565b9050919050565b60006121c082611551565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036121f2576121f1611ffe565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061223782611551565b915061224283611551565b925082612252576122516121fd565b5b828204905092915050565b600061226882611551565b915061227383611551565b925082612283576122826121fd565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006122e4826122bd565b6122ee81856122c8565b93506122fe8185602086016114b2565b612307816114e5565b840191505092915050565b600060808201905061232760008301876115e6565b61233460208301866115e6565b61234160408301856116fc565b818103606083015261235381846122d9565b905095945050505050565b60008151905061236d81611407565b92915050565b600060208284031215612389576123886113d1565b5b60006123978482850161235e565b9150509291505056fea26469706673582212200147440b7d57cc3528f162ce5f100a94000784ed3377ac095c046a1f085628e464736f6c634300080d0033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c80636352211e1161008c578063a22cb46511610066578063a22cb46514610224578063b88d4fde14610240578063c87b56dd1461025c578063e985e9c51461028c576100cf565b80636352211e146101a657806370a08231146101d657806395d89b4114610206576100cf565b806301ffc9a7146100d457806306fdde0314610104578063081812fc14610122578063095ea7b31461015257806323b872dd1461016e57806342842e0e1461018a575b600080fd5b6100ee60048036038101906100e99190611433565b6102bc565b6040516100fb919061147b565b60405180910390f35b61010c61039e565b604051610119919061152f565b60405180910390f35b61013c60048036038101906101379190611587565b610430565b60405161014991906115f5565b60405180910390f35b61016c6004803603810190610167919061163c565b6104b5565b005b6101886004803603810190610183919061167c565b6105cc565b005b6101a4600480360381019061019f919061167c565b61062c565b005b6101c060048036038101906101bb9190611587565b61064c565b6040516101cd91906115f5565b60405180910390f35b6101f060048036038101906101eb91906116cf565b6106fd565b6040516101fd919061170b565b60405180910390f35b61020e6107b4565b60405161021b919061152f565b60405180910390f35b61023e60048036038101906102399190611752565b610846565b005b61025a600480360381019061025591906118c7565b61085c565b005b61027660048036038101906102719190611587565b6108be565b604051610283919061152f565b60405180910390f35b6102a660048036038101906102a1919061194a565b610965565b6040516102b3919061147b565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061038757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103975750610396826109f9565b5b9050919050565b6060600080546103ad906119b9565b80601f01602080910402602001604051908101604052809291908181526020018280546103d9906119b9565b80156104265780601f106103fb57610100808354040283529160200191610426565b820191906000526020600020905b81548152906001019060200180831161040957829003601f168201915b5050505050905090565b600061043b82610a63565b61047a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047190611a5c565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b60006104c08261064c565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610530576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161052790611aee565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1661054f610acf565b73ffffffffffffffffffffffffffffffffffffffff16148061057e575061057d81610578610acf565b610965565b5b6105bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105b490611b80565b60405180910390fd5b6105c78383610ad7565b505050565b6105dd6105d7610acf565b82610b90565b61061c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061390611c12565b60405180910390fd5b610627838383610c6e565b505050565b6106478383836040518060200160405280600081525061085c565b505050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb90611ca4565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361076d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076490611d36565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546107c3906119b9565b80601f01602080910402602001604051908101604052809291908181526020018280546107ef906119b9565b801561083c5780601f106108115761010080835404028352916020019161083c565b820191906000526020600020905b81548152906001019060200180831161081f57829003601f168201915b5050505050905090565b610858610851610acf565b8383610ed4565b5050565b61086d610867610acf565b83610b90565b6108ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a390611c12565b60405180910390fd5b6108b884848484611040565b50505050565b60606108c982610a63565b610908576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ff90611dc8565b60405180910390fd5b600061091261109c565b90506000815111610932576040518060200160405280600081525061095d565b8061093c846110b3565b60405160200161094d929190611e24565b6040516020818303038152906040525b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610b4a8361064c565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000610b9b82610a63565b610bda576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd190611eba565b60405180910390fd5b6000610be58361064c565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610c275750610c268185610965565b5b80610c6557508373ffffffffffffffffffffffffffffffffffffffff16610c4d84610430565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610c8e8261064c565b73ffffffffffffffffffffffffffffffffffffffff1614610ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdb90611f4c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a90611fde565b60405180910390fd5b610d5e838383611213565b610d69600082610ad7565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db9919061202d565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e109190612061565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ecf838383611218565b505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3990612103565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611033919061147b565b60405180910390a3505050565b61104b848484610c6e565b6110578484848461121d565b611096576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161108d90612195565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b6060600082036110fa576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061120e565b600082905060005b6000821461112c578080611115906121b5565b915050600a82611125919061222c565b9150611102565b60008167ffffffffffffffff8111156111485761114761179c565b5b6040519080825280601f01601f19166020018201604052801561117a5781602001600182028036833780820191505090505b5090505b6000851461120757600182611193919061202d565b9150600a856111a2919061225d565b60306111ae9190612061565b60f81b8183815181106111c4576111c361228e565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85611200919061222c565b945061117e565b8093505050505b919050565b505050565b505050565b600061123e8473ffffffffffffffffffffffffffffffffffffffff166113a4565b15611397578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611267610acf565b8786866040518563ffffffff1660e01b81526004016112899493929190612312565b6020604051808303816000875af19250505080156112c557506040513d601f19601f820116820180604052508101906112c29190612373565b60015b611347573d80600081146112f5576040519150601f19603f3d011682016040523d82523d6000602084013e6112fa565b606091505b50600081510361133f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133690612195565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161491505061139c565b600190505b949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611410816113db565b811461141b57600080fd5b50565b60008135905061142d81611407565b92915050565b600060208284031215611449576114486113d1565b5b60006114578482850161141e565b91505092915050565b60008115159050919050565b61147581611460565b82525050565b6000602082019050611490600083018461146c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156114d05780820151818401526020810190506114b5565b838111156114df576000848401525b50505050565b6000601f19601f8301169050919050565b600061150182611496565b61150b81856114a1565b935061151b8185602086016114b2565b611524816114e5565b840191505092915050565b6000602082019050818103600083015261154981846114f6565b905092915050565b6000819050919050565b61156481611551565b811461156f57600080fd5b50565b6000813590506115818161155b565b92915050565b60006020828403121561159d5761159c6113d1565b5b60006115ab84828501611572565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115df826115b4565b9050919050565b6115ef816115d4565b82525050565b600060208201905061160a60008301846115e6565b92915050565b611619816115d4565b811461162457600080fd5b50565b60008135905061163681611610565b92915050565b60008060408385031215611653576116526113d1565b5b600061166185828601611627565b925050602061167285828601611572565b9150509250929050565b600080600060608486031215611695576116946113d1565b5b60006116a386828701611627565b93505060206116b486828701611627565b92505060406116c586828701611572565b9150509250925092565b6000602082840312156116e5576116e46113d1565b5b60006116f384828501611627565b91505092915050565b61170581611551565b82525050565b600060208201905061172060008301846116fc565b92915050565b61172f81611460565b811461173a57600080fd5b50565b60008135905061174c81611726565b92915050565b60008060408385031215611769576117686113d1565b5b600061177785828601611627565b92505060206117888582860161173d565b9150509250929050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6117d4826114e5565b810181811067ffffffffffffffff821117156117f3576117f261179c565b5b80604052505050565b60006118066113c7565b905061181282826117cb565b919050565b600067ffffffffffffffff8211156118325761183161179c565b5b61183b826114e5565b9050602081019050919050565b82818337600083830152505050565b600061186a61186584611817565b6117fc565b90508281526020810184848401111561188657611885611797565b5b611891848285611848565b509392505050565b600082601f8301126118ae576118ad611792565b5b81356118be848260208601611857565b91505092915050565b600080600080608085870312156118e1576118e06113d1565b5b60006118ef87828801611627565b945050602061190087828801611627565b935050604061191187828801611572565b925050606085013567ffffffffffffffff811115611932576119316113d6565b5b61193e87828801611899565b91505092959194509250565b60008060408385031215611961576119606113d1565b5b600061196f85828601611627565b925050602061198085828601611627565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806119d157607f821691505b6020821081036119e4576119e361198a565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611a46602c836114a1565b9150611a51826119ea565b604082019050919050565b60006020820190508181036000830152611a7581611a39565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000611ad86021836114a1565b9150611ae382611a7c565b604082019050919050565b60006020820190508181036000830152611b0781611acb565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000611b6a6038836114a1565b9150611b7582611b0e565b604082019050919050565b60006020820190508181036000830152611b9981611b5d565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000611bfc6031836114a1565b9150611c0782611ba0565b604082019050919050565b60006020820190508181036000830152611c2b81611bef565b9050919050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b6000611c8e6029836114a1565b9150611c9982611c32565b604082019050919050565b60006020820190508181036000830152611cbd81611c81565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000611d20602a836114a1565b9150611d2b82611cc4565b604082019050919050565b60006020820190508181036000830152611d4f81611d13565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000611db2602f836114a1565b9150611dbd82611d56565b604082019050919050565b60006020820190508181036000830152611de181611da5565b9050919050565b600081905092915050565b6000611dfe82611496565b611e088185611de8565b9350611e188185602086016114b2565b80840191505092915050565b6000611e308285611df3565b9150611e3c8284611df3565b91508190509392505050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611ea4602c836114a1565b9150611eaf82611e48565b604082019050919050565b60006020820190508181036000830152611ed381611e97565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611f366025836114a1565b9150611f4182611eda565b604082019050919050565b60006020820190508181036000830152611f6581611f29565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611fc86024836114a1565b9150611fd382611f6c565b604082019050919050565b60006020820190508181036000830152611ff781611fbb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061203882611551565b915061204383611551565b92508282101561205657612055611ffe565b5b828203905092915050565b600061206c82611551565b915061207783611551565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156120ac576120ab611ffe565b5b828201905092915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006120ed6019836114a1565b91506120f8826120b7565b602082019050919050565b6000602082019050818103600083015261211c816120e0565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061217f6032836114a1565b915061218a82612123565b604082019050919050565b600060208201905081810360008301526121ae81612172565b9050919050565b60006121c082611551565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036121f2576121f1611ffe565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061223782611551565b915061224283611551565b925082612252576122516121fd565b5b828204905092915050565b600061226882611551565b915061227383611551565b925082612283576122826121fd565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60006122e4826122bd565b6122ee81856122c8565b93506122fe8185602086016114b2565b612307816114e5565b840191505092915050565b600060808201905061232760008301876115e6565b61233460208301866115e6565b61234160408301856116fc565b818103606083015261235381846122d9565b905095945050505050565b60008151905061236d81611407565b92915050565b600060208284031215612389576123886113d1565b5b60006123978482850161235e565b9150509291505056fea26469706673582212200147440b7d57cc3528f162ce5f100a94000784ed3377ac095c046a1f085628e464736f6c634300080d0033", - "immutableReferences": {}, - "generatedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:4093:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47:35:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "57:19:13", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "73:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "67:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "67:9:13" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "57:6:13" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "40:6:13", - "type": "" - } - ], - "src": "7:75:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "177:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "194:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "197:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "187:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "187:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "187:12:13" - } - ] - }, - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulFunctionDefinition", - "src": "88:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "300:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "320:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "310:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "310:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "310:12:13" - } - ] - }, - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulFunctionDefinition", - "src": "211:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "423:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "440:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "443:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "433:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "433:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "433:12:13" - } - ] - }, - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulFunctionDefinition", - "src": "334:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "546:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "563:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "566:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "556:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "556:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "556:12:13" - } - ] - }, - "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", - "nodeType": "YulFunctionDefinition", - "src": "457:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "628:54:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "638:38:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "656:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "663:2:13", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "652:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "652:14:13" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "672:2:13", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "668:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "668:7:13" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "648:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "648:28:13" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "638:6:13" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "611:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "621:6:13", - "type": "" - } - ], - "src": "580:102:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "716:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "733:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "736:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "726:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "726:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "726:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "830:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "833:4:13", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "823:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "823:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "823:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "854:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "857:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "847:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "847:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "847:15:13" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "688:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "917:238:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "927:58:13", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "949:6:13" - }, - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "979:4:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "957:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "957:27:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "945:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "945:40:13" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "931:10:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1096:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1098:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "1098:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1098:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1039:10:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1051:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1036:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1036:34:13" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1075:10:13" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1087:6:13" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1072:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1072:22:13" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "1033:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1033:62:13" - }, - "nodeType": "YulIf", - "src": "1030:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1134:2:13", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "1138:10:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1127:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1127:22:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1127:22:13" - } - ] - }, - "name": "finalize_allocation", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "903:6:13", - "type": "" - }, - { - "name": "size", - "nodeType": "YulTypedName", - "src": "911:4:13", - "type": "" - } - ], - "src": "874:281:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1202:88:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1212:30:13", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_unbounded", - "nodeType": "YulIdentifier", - "src": "1222:18:13" - }, - "nodeType": "YulFunctionCall", - "src": "1222:20:13" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1212:6:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "1271:6:13" - }, - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1279:4:13" - } - ], - "functionName": { - "name": "finalize_allocation", - "nodeType": "YulIdentifier", - "src": "1251:19:13" - }, - "nodeType": "YulFunctionCall", - "src": "1251:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1251:33:13" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "1186:4:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "1195:6:13", - "type": "" - } - ], - "src": "1161:129:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1363:241:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "1468:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "1470:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "1470:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1470:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1440:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1448:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1437:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1437:30:13" - }, - "nodeType": "YulIf", - "src": "1434:56:13" - }, - { - "nodeType": "YulAssignment", - "src": "1500:37:13", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1530:6:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "1508:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "1508:29:13" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1500:4:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1574:23:13", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1586:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1592:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1582:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1582:15:13" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "1574:4:13" - } - ] - } - ] - }, - "name": "array_allocation_size_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1347:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "1358:4:13", - "type": "" - } - ], - "src": "1296:308:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1659:258:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1669:10:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1678:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1673:1:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1738:63:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1763:3:13" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1768:1:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1759:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1759:11:13" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "1782:3:13" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1787:1:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1778:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1778:11:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1772:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "1772:18:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1752:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1752:39:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1752:39:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1699:1:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1702:6:13" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1696:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1696:13:13" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1710:19:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1712:15:13", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1721:1:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1724:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1717:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1717:10:13" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1712:1:13" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1692:3:13", - "statements": [] - }, - "src": "1688:113:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1835:76:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1885:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1890:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1881:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1881:16:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1899:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1874:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1874:27:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1874:27:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1816:1:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1819:6:13" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "1813:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1813:13:13" - }, - "nodeType": "YulIf", - "src": "1810:101:13" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "1641:3:13", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "1646:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1651:6:13", - "type": "" - } - ], - "src": "1610:307:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2018:326:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2028:75:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2095:6:13" - } - ], - "functionName": { - "name": "array_allocation_size_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "2053:41:13" - }, - "nodeType": "YulFunctionCall", - "src": "2053:49:13" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "2037:15:13" - }, - "nodeType": "YulFunctionCall", - "src": "2037:66:13" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2028:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2119:5:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2126:6:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2112:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2112:21:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2112:21:13" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2142:27:13", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2157:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2164:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2153:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2153:16:13" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "2146:3:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2207:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", - "nodeType": "YulIdentifier", - "src": "2209:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "2209:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2209:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2188:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2193:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2184:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2184:16:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2202:3:13" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2181:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "2181:25:13" - }, - "nodeType": "YulIf", - "src": "2178:112:13" - }, - { - "expression": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "2321:3:13" - }, - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2326:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2331:6:13" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "2299:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "2299:39:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2299:39:13" - } - ] - }, - "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "1991:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1996:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2004:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2012:5:13", - "type": "" - } - ], - "src": "1923:421:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2437:282:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2486:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulIdentifier", - "src": "2488:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "2488:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2488:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2465:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2473:4:13", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2461:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2461:17:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2480:3:13" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2457:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2457:27:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2450:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2450:35:13" - }, - "nodeType": "YulIf", - "src": "2447:122:13" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "2578:27:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2598:6:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "2592:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "2592:13:13" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2582:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2614:99:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2686:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2694:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2682:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2682:17:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2701:6:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2709:3:13" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_string_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "2623:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "2623:90:13" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "2614:5:13" - } - ] - } - ] - }, - "name": "abi_decode_t_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2415:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2423:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "2431:5:13", - "type": "" - } - ], - "src": "2364:355:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2839:739:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2885:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "2887:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "2887:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2887:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2860:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2869:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2856:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2856:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2881:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2852:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2852:32:13" - }, - "nodeType": "YulIf", - "src": "2849:119:13" - }, - { - "nodeType": "YulBlock", - "src": "2978:291:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2993:38:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3017:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3028:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3013:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3013:17:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3007:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "3007:24:13" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2997:6:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3078:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "3080:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "3080:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3080:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3050:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3058:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3047:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "3047:30:13" - }, - "nodeType": "YulIf", - "src": "3044:117:13" - }, - { - "nodeType": "YulAssignment", - "src": "3175:84:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3231:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3242:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3227:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3227:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3251:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_string_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "3185:41:13" - }, - "nodeType": "YulFunctionCall", - "src": "3185:74:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3175:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "3279:292:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3294:39:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3318:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3329:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3314:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3314:18:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "3308:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "3308:25:13" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3298:6:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3380:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "3382:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "3382:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3382:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3352:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3360:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "3349:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "3349:30:13" - }, - "nodeType": "YulIf", - "src": "3346:117:13" - }, - { - "nodeType": "YulAssignment", - "src": "3477:84:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3533:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3544:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3529:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3529:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3553:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_string_memory_ptr_fromMemory", - "nodeType": "YulIdentifier", - "src": "3487:41:13" - }, - "nodeType": "YulFunctionCall", - "src": "3487:74:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "3477:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2801:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2812:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2824:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "2832:6:13", - "type": "" - } - ], - "src": "2725:853:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3612:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3629:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3632:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3622:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3622:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3622:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3726:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3729:4:13", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3719:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3719:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3719:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3750:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3753:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3743:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3743:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3743:15:13" - } - ] - }, - "name": "panic_error_0x22", - "nodeType": "YulFunctionDefinition", - "src": "3584:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3821:269:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3831:22:13", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "3845:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3851:1:13", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "3841:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3841:12:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3831:6:13" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "3862:38:13", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "3892:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3898:1:13", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3888:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3888:12:13" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "3866:18:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3939:51:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3953:27:13", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3967:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3975:4:13", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3963:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3963:17:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "3953:6:13" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "3919:18:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3912:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3912:26:13" - }, - "nodeType": "YulIf", - "src": "3909:81:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4042:42:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x22", - "nodeType": "YulIdentifier", - "src": "4056:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "4056:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "4056:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "4006:18:13" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "4029:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4037:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "4026:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "4026:14:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "4003:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "4003:38:13" - }, - "nodeType": "YulIf", - "src": "4000:84:13" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "3805:4:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "3814:6:13", - "type": "" - } - ], - "src": "3770:320:13" - } - ] - }, - "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 abi_decode_tuple_t_string_memory_ptrt_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { 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 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": 13, - "language": "Yul", - "name": "#utility.yul" - } - ], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:27818:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47:35:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "57:19:13", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "73:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "67:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "67:9:13" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "57:6:13" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "40:6:13", - "type": "" - } - ], - "src": "7:75:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "177:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "194:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "197:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "187:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "187:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "187:12:13" - } - ] - }, - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulFunctionDefinition", - "src": "88:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "300:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "320:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "310:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "310:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "310:12:13" - } - ] - }, - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulFunctionDefinition", - "src": "211:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "378:105:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "388:89:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "403:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "410:66:13", - "type": "", - "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "399:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "399:78:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "388:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_bytes4", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "360:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "370:7:13", - "type": "" - } - ], - "src": "334:149:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "531:78:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "587:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "596:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "599:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "589:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "589:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "589:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "554:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "578:5:13" - } - ], - "functionName": { - "name": "cleanup_t_bytes4", - "nodeType": "YulIdentifier", - "src": "561:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "561:23:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "551:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "551:34:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "544:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "544:42:13" - }, - "nodeType": "YulIf", - "src": "541:62:13" - } - ] - }, - "name": "validator_revert_t_bytes4", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "524:5:13", - "type": "" - } - ], - "src": "489:120:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "666:86:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "676:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "698:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "685:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "685:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "676:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "740:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_bytes4", - "nodeType": "YulIdentifier", - "src": "714:25:13" - }, - "nodeType": "YulFunctionCall", - "src": "714:32:13" - }, - "nodeType": "YulExpressionStatement", - "src": "714:32:13" - } - ] - }, - "name": "abi_decode_t_bytes4", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "644:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "652:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "660:5:13", - "type": "" - } - ], - "src": "615:137:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "823:262:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "869:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "871:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "871:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "871:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "844:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "853:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "840:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "840:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "865:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "836:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "836:32:13" - }, - "nodeType": "YulIf", - "src": "833:119:13" - }, - { - "nodeType": "YulBlock", - "src": "962:116:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "977:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "991:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "981:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1006:62:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1040:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1051:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1036:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1036:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1060:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_bytes4", - "nodeType": "YulIdentifier", - "src": "1016:19:13" - }, - "nodeType": "YulFunctionCall", - "src": "1016:52:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1006:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes4", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "793:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "804:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "816:6:13", - "type": "" - } - ], - "src": "758:327:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1133:48:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1143:32:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1168:5:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1161:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1161:13:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "1154:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1154:21:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "1143:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1115:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "1125:7:13", - "type": "" - } - ], - "src": "1091:90:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1246:50:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1263:3:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1283:5:13" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "1268:14:13" - }, - "nodeType": "YulFunctionCall", - "src": "1268:21:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1256:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1256:34:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1256:34:13" - } - ] - }, - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1234:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1241:3:13", - "type": "" - } - ], - "src": "1187:109:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1394:118:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1404:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1416:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1427:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1412:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1412:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1404:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1478:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1491:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1502:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1487:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1487:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_bool_to_t_bool_fromStack", - "nodeType": "YulIdentifier", - "src": "1440:37:13" - }, - "nodeType": "YulFunctionCall", - "src": "1440:65:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1440:65:13" - } - ] - }, - "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1366:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1378:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1389:4:13", - "type": "" - } - ], - "src": "1302:210:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1577:40:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1588:22:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1604:5:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1598:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "1598:12:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1588:6:13" - } - ] - } - ] - }, - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1560:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1570:6:13", - "type": "" - } - ], - "src": "1518:99:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1719:73:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1736:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1741:6:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1729:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1729:19:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1729:19:13" - }, - { - "nodeType": "YulAssignment", - "src": "1757:29:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1776:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1781:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1772:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1772:14:13" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "1757:11:13" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1691:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1696:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "1707:11:13", - "type": "" - } - ], - "src": "1623:169:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1847:258:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1857:10:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1866:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "i", - "nodeType": "YulTypedName", - "src": "1861:1:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1926:63:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "1951:3:13" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1956:1:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1947:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1947:11:13" - }, - { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "1970:3:13" - }, - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1975:1:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1966:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1966:11:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "1960:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "1960:18:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1940:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1940:39:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1940:39:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1887:1:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "1890:6:13" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "1884:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "1884:13:13" - }, - "nodeType": "YulForLoop", - "post": { - "nodeType": "YulBlock", - "src": "1898:19:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1900:15:13", - "value": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1909:1:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1912:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1905:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1905:10:13" - }, - "variableNames": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "1900:1:13" - } - ] - } - ] - }, - "pre": { - "nodeType": "YulBlock", - "src": "1880:3:13", - "statements": [] - }, - "src": "1876:113:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2023:76:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "2073:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2078:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2069:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2069:16:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2087:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2062:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2062:27:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2062:27:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "i", - "nodeType": "YulIdentifier", - "src": "2004:1:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2007:6:13" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "2001:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "2001:13:13" - }, - "nodeType": "YulIf", - "src": "1998:101:13" - } - ] - }, - "name": "copy_memory_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "1829:3:13", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "1834:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "1839:6:13", - "type": "" - } - ], - "src": "1798:307:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2159:54:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2169:38:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2187:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2194:2:13", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2183:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2183:14:13" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2203:2:13", - "type": "", - "value": "31" - } - ], - "functionName": { - "name": "not", - "nodeType": "YulIdentifier", - "src": "2199:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2199:7:13" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "2179:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2179:28:13" - }, - "variableNames": [ - { - "name": "result", - "nodeType": "YulIdentifier", - "src": "2169:6:13" - } - ] - } - ] - }, - "name": "round_up_to_mul_of_32", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2142:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "result", - "nodeType": "YulTypedName", - "src": "2152:6:13", - "type": "" - } - ], - "src": "2111:102:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2311:272:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2321:53:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2368:5:13" - } - ], - "functionName": { - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "2335:32:13" - }, - "nodeType": "YulFunctionCall", - "src": "2335:39:13" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2325:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2383:78:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2449:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2454:6:13" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "2390:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "2390:71:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2383:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2496:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2503:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2492:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2492:16:13" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2510:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2515:6:13" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "2470:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "2470:52:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2470:52:13" - }, - { - "nodeType": "YulAssignment", - "src": "2531:46:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2542:3:13" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2569:6:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "2547:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "2547:29:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2538:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2538:39:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "2531:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2292:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "2299:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2307:3:13", - "type": "" - } - ], - "src": "2219:364:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2707:195:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2717:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2729:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2740:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2725:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2725:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2717:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2764:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2775:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2760:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2760:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2783:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2789:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2779:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2779:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2753:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2753:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2753:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "2809:86:13", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2881:6:13" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2890:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "2817:63:13" - }, - "nodeType": "YulFunctionCall", - "src": "2817:78:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "2809:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2679:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2691:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "2702:4:13", - "type": "" - } - ], - "src": "2589:313:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2953:32:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2963:16:13", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2974:5:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "2963:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2935:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "2945:7:13", - "type": "" - } - ], - "src": "2908:77:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3034:79:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3091:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3100:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3103:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "3093:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3093:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3093:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3057:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3082:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "3064:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "3064:24:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "3054:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "3054:35:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "3047:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3047:43:13" - }, - "nodeType": "YulIf", - "src": "3044:63:13" - } - ] - }, - "name": "validator_revert_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3027:5:13", - "type": "" - } - ], - "src": "2991:122:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3171:87:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3181:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3203:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "3190:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "3190:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3181:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3246:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "3219:26:13" - }, - "nodeType": "YulFunctionCall", - "src": "3219:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3219:33:13" - } - ] - }, - "name": "abi_decode_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3149:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3157:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3165:5:13", - "type": "" - } - ], - "src": "3119:139:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3330:263:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "3376:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "3378:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "3378:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3378:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3351:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3360:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3347:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3347:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3372:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "3343:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3343:32:13" - }, - "nodeType": "YulIf", - "src": "3340:119:13" - }, - { - "nodeType": "YulBlock", - "src": "3469:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "3484:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3498:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "3488:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "3513:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3548:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "3559:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3544:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3544:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "3568:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "3523:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "3523:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "3513:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3300:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "3311:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "3323:6:13", - "type": "" - } - ], - "src": "3264:329:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3644:81:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3654:65:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3669:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3676:42:13", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "3665:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3665:54:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "3654:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3626:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "3636:7:13", - "type": "" - } - ], - "src": "3599:126:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3776:51:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3786:35:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3815:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "3797:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "3797:24:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "3786:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3758:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "3768:7:13", - "type": "" - } - ], - "src": "3731:96:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3898:53:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3915:3:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "3938:5:13" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "3920:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "3920:24:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3908:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3908:37:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3908:37:13" - } - ] - }, - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "3886:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3893:3:13", - "type": "" - } - ], - "src": "3833:118:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4055:124:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4065:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4077:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4088:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4073:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4073:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "4065:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4145:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4158:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4169:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4154:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4154:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "4101:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "4101:71:13" - }, - "nodeType": "YulExpressionStatement", - "src": "4101:71:13" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4027:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4039:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "4050:4:13", - "type": "" - } - ], - "src": "3957:222:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4228:79:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4285:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4294:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4297:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "4287:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "4287:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "4287:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4251:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4276:5:13" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "4258:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "4258:24:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "4248:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "4248:35:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "4241:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "4241:43:13" - }, - "nodeType": "YulIf", - "src": "4238:63:13" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4221:5:13", - "type": "" - } - ], - "src": "4185:122:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4365:87:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "4375:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4397:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "4384:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "4384:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4375:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "4440:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "4413:26:13" - }, - "nodeType": "YulFunctionCall", - "src": "4413:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "4413:33:13" - } - ] - }, - "name": "abi_decode_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4343:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "4351:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "4359:5:13", - "type": "" - } - ], - "src": "4313:139:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "4541:391:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "4587:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "4589:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "4589:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "4589:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4562:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4571:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "4558:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4558:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4583:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "4554:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4554:32:13" - }, - "nodeType": "YulIf", - "src": "4551:119:13" - }, - { - "nodeType": "YulBlock", - "src": "4680:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4695:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4709:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4699:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4724:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4759:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4770:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4755:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4755:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4779:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "4734:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "4734:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "4724:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "4807:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "4822:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "4836:2:13", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "4826:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "4852:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "4887:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "4898:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "4883:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "4883:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "4907:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "4862:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "4862:53:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "4852:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4503:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "4514:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "4526:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "4534:6:13", - "type": "" - } - ], - "src": "4458:474:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5038:519:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5084:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "5086:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "5086:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "5086:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5059:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5068:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5055:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5055:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5080:2:13", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5051:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5051:32:13" - }, - "nodeType": "YulIf", - "src": "5048:119:13" - }, - { - "nodeType": "YulBlock", - "src": "5177:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5192:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5206:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5196:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5221:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5256:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5267:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5252:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5252:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5276:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "5231:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "5231:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5221:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "5304:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5319:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5333:2:13", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5323:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5349:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5384:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5395:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5380:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5380:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5404:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "5359:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "5359:53:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "5349:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "5432:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5447:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5461:2:13", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5451:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5477:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5512:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5523:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5508:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5508:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5532:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "5487:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "5487:53:13" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "5477:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "4992:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5003:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5015:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "5023:6:13", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "5031:6:13", - "type": "" - } - ], - "src": "4938:619:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5629:263:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "5675:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "5677:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "5677:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "5677:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5650:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5659:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "5646:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5646:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5671:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "5642:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5642:32:13" - }, - "nodeType": "YulIf", - "src": "5639:119:13" - }, - { - "nodeType": "YulBlock", - "src": "5768:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "5783:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "5797:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "5787:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "5812:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "5847:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "5858:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "5843:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "5843:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "5867:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "5822:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "5822:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "5812:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "5599:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "5610:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "5622:6:13", - "type": "" - } - ], - "src": "5563:329:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "5963:53:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "5980:3:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6003:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "5985:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "5985:24:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "5973:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "5973:37:13" - }, - "nodeType": "YulExpressionStatement", - "src": "5973:37:13" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "5951:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "5958:3:13", - "type": "" - } - ], - "src": "5898:118:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6120:124:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6130:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6142:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6153:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6138:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6138:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "6130:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6210:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6223:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6234:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6219:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6219:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "6166:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "6166:71:13" - }, - "nodeType": "YulExpressionStatement", - "src": "6166:71:13" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6092:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6104:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "6115:4:13", - "type": "" - } - ], - "src": "6022:222:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6290:76:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6344:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6353:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6356:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "6346:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "6346:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "6346:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6313:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6335:5:13" - } - ], - "functionName": { - "name": "cleanup_t_bool", - "nodeType": "YulIdentifier", - "src": "6320:14:13" - }, - "nodeType": "YulFunctionCall", - "src": "6320:21:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "6310:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "6310:32:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "6303:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "6303:40:13" - }, - "nodeType": "YulIf", - "src": "6300:60:13" - } - ] - }, - "name": "validator_revert_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6283:5:13", - "type": "" - } - ], - "src": "6250:116:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6421:84:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "6431:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6453:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "6440:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "6440:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6431:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "6493:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_bool", - "nodeType": "YulIdentifier", - "src": "6469:23:13" - }, - "nodeType": "YulFunctionCall", - "src": "6469:30:13" - }, - "nodeType": "YulExpressionStatement", - "src": "6469:30:13" - } - ] - }, - "name": "abi_decode_t_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6399:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "6407:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "6415:5:13", - "type": "" - } - ], - "src": "6372:133:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "6591:388:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "6637:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "6639:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "6639:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "6639:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6612:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6621:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "6608:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6608:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6633:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "6604:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6604:32:13" - }, - "nodeType": "YulIf", - "src": "6601:119:13" - }, - { - "nodeType": "YulBlock", - "src": "6730:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6745:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6759:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6749:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6774:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6809:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6820:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6805:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6805:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6829:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "6784:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "6784:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "6774:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "6857:115:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "6872:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "6886:2:13", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "6876:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "6902:60:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "6934:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "6945:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "6930:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "6930:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "6954:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_bool", - "nodeType": "YulIdentifier", - "src": "6912:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "6912:50:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "6902:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_bool", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "6553:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "6564:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "6576:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "6584:6:13", - "type": "" - } - ], - "src": "6511:468:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7074:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7091:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7094:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7084:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7084:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7084:12:13" - } - ] - }, - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulFunctionDefinition", - "src": "6985:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7197:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7214:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7217:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7207:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7207:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7207:12:13" - } - ] - }, - "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", - "nodeType": "YulFunctionDefinition", - "src": "7108:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7259:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7276:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7279:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7269:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7269:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7269:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7373:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7376:4:13", - "type": "", - "value": "0x41" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7366:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7366:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7366:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7397:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7400:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "7390:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7390:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7390:15:13" - } - ] - }, - "name": "panic_error_0x41", - "nodeType": "YulFunctionDefinition", - "src": "7231:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7460:238:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "7470:58:13", - "value": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "7492:6:13" - }, - { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "7522:4:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "7500:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "7500:27:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "7488:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "7488:40:13" - }, - "variables": [ - { - "name": "newFreePtr", - "nodeType": "YulTypedName", - "src": "7474:10:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7639:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "7641:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "7641:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7641:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "7582:10:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7594:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7579:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "7579:34:13" - }, - { - "arguments": [ - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "7618:10:13" - }, - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "7630:6:13" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "7615:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "7615:22:13" - } - ], - "functionName": { - "name": "or", - "nodeType": "YulIdentifier", - "src": "7576:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "7576:62:13" - }, - "nodeType": "YulIf", - "src": "7573:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7677:2:13", - "type": "", - "value": "64" - }, - { - "name": "newFreePtr", - "nodeType": "YulIdentifier", - "src": "7681:10:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "7670:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "7670:22:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7670:22:13" - } - ] - }, - "name": "finalize_allocation", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "7446:6:13", - "type": "" - }, - { - "name": "size", - "nodeType": "YulTypedName", - "src": "7454:4:13", - "type": "" - } - ], - "src": "7417:281:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7745:88:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "7755:30:13", - "value": { - "arguments": [], - "functionName": { - "name": "allocate_unbounded", - "nodeType": "YulIdentifier", - "src": "7765:18:13" - }, - "nodeType": "YulFunctionCall", - "src": "7765:20:13" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "7755:6:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "7814:6:13" - }, - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "7822:4:13" - } - ], - "functionName": { - "name": "finalize_allocation", - "nodeType": "YulIdentifier", - "src": "7794:19:13" - }, - "nodeType": "YulFunctionCall", - "src": "7794:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "7794:33:13" - } - ] - }, - "name": "allocate_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "7729:4:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "7738:6:13", - "type": "" - } - ], - "src": "7704:129:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "7905:241:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8010:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x41", - "nodeType": "YulIdentifier", - "src": "8012:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "8012:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8012:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "7982:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "7990:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "7979:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "7979:30:13" - }, - "nodeType": "YulIf", - "src": "7976:56:13" - }, - { - "nodeType": "YulAssignment", - "src": "8042:37:13", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8072:6:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "8050:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "8050:29:13" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "8042:4:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8116:23:13", - "value": { - "arguments": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "8128:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8134:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8124:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8124:15:13" - }, - "variableNames": [ - { - "name": "size", - "nodeType": "YulIdentifier", - "src": "8116:4:13" - } - ] - } - ] - }, - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "7889:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "size", - "nodeType": "YulTypedName", - "src": "7900:4:13", - "type": "" - } - ], - "src": "7839:307:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8203:103:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "8226:3:13" - }, - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "8231:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8236:6:13" - } - ], - "functionName": { - "name": "calldatacopy", - "nodeType": "YulIdentifier", - "src": "8213:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "8213:30:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8213:30:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "8284:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8289:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8280:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8280:16:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8298:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8273:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "8273:27:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8273:27:13" - } - ] - }, - "name": "copy_calldata_to_memory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "8185:3:13", - "type": "" - }, - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "8190:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8195:6:13", - "type": "" - } - ], - "src": "8152:154:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8395:327:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "8405:74:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8471:6:13" - } - ], - "functionName": { - "name": "array_allocation_size_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "8430:40:13" - }, - "nodeType": "YulFunctionCall", - "src": "8430:48:13" - } - ], - "functionName": { - "name": "allocate_memory", - "nodeType": "YulIdentifier", - "src": "8414:15:13" - }, - "nodeType": "YulFunctionCall", - "src": "8414:65:13" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "8405:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "8495:5:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8502:6:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "8488:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "8488:21:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8488:21:13" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8518:27:13", - "value": { - "arguments": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "8533:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8540:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8529:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8529:16:13" - }, - "variables": [ - { - "name": "dst", - "nodeType": "YulTypedName", - "src": "8522:3:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8583:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", - "nodeType": "YulIdentifier", - "src": "8585:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "8585:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8585:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "8564:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8569:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8560:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8560:16:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8578:3:13" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "8557:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "8557:25:13" - }, - "nodeType": "YulIf", - "src": "8554:112:13" - }, - { - "expression": { - "arguments": [ - { - "name": "src", - "nodeType": "YulIdentifier", - "src": "8699:3:13" - }, - { - "name": "dst", - "nodeType": "YulIdentifier", - "src": "8704:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "8709:6:13" - } - ], - "functionName": { - "name": "copy_calldata_to_memory", - "nodeType": "YulIdentifier", - "src": "8675:23:13" - }, - "nodeType": "YulFunctionCall", - "src": "8675:41:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8675:41:13" - } - ] - }, - "name": "abi_decode_available_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "src", - "nodeType": "YulTypedName", - "src": "8368:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8373:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8381:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "8389:5:13", - "type": "" - } - ], - "src": "8312:410:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "8802:277:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "8851:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", - "nodeType": "YulIdentifier", - "src": "8853:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "8853:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "8853:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8830:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "8838:4:13", - "type": "", - "value": "0x1f" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "8826:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8826:17:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "8845:3:13" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "8822:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "8822:27:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "8815:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "8815:35:13" - }, - "nodeType": "YulIf", - "src": "8812:122:13" - }, - { - "nodeType": "YulVariableDeclaration", - "src": "8943:34:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "8970:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "8957:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "8957:20:13" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "8947:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "8986:87:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9046:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9054:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9042:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9042:17:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "9061:6:13" - }, - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "9069:3:13" - } - ], - "functionName": { - "name": "abi_decode_available_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "8995:46:13" - }, - "nodeType": "YulFunctionCall", - "src": "8995:78:13" - }, - "variableNames": [ - { - "name": "array", - "nodeType": "YulIdentifier", - "src": "8986:5:13" - } - ] - } - ] - }, - "name": "abi_decode_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "8780:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "8788:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "array", - "nodeType": "YulTypedName", - "src": "8796:5:13", - "type": "" - } - ], - "src": "8741:338:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9211:817:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "9258:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "9260:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "9260:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "9260:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9232:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9241:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "9228:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9228:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9253:3:13", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "9224:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9224:33:13" - }, - "nodeType": "YulIf", - "src": "9221:120:13" - }, - { - "nodeType": "YulBlock", - "src": "9351:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9366:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9380:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9370:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9395:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9430:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9441:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9426:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9426:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9450:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "9405:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "9405:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "9395:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "9478:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9493:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9507:2:13", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9497:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9523:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9558:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9569:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9554:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9554:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9578:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "9533:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "9533:53:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "9523:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "9606:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9621:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9635:2:13", - "type": "", - "value": "64" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9625:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "9651:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9686:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9697:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9682:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9682:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "9706:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "9661:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "9661:53:13" - }, - "variableNames": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "9651:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "9734:287:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "9749:46:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9780:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9791:2:13", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9776:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9776:18:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "9763:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "9763:32:13" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "9753:6:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "9842:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulIdentifier", - "src": "9844:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "9844:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "9844:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9814:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "9822:18:13", - "type": "", - "value": "0xffffffffffffffff" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "9811:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "9811:30:13" - }, - "nodeType": "YulIf", - "src": "9808:117:13" - }, - { - "nodeType": "YulAssignment", - "src": "9939:72:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "9983:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "9994:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "9979:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "9979:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10003:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "9949:29:13" - }, - "nodeType": "YulFunctionCall", - "src": "9949:62:13" - }, - "variableNames": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "9939:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_addresst_uint256t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "9157:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "9168:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "9180:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "9188:6:13", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "9196:6:13", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "9204:6:13", - "type": "" - } - ], - "src": "9085:943:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10117:391:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "10163:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "10165:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "10165:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "10165:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10138:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10147:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "10134:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10134:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10159:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "10130:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10130:32:13" - }, - "nodeType": "YulIf", - "src": "10127:119:13" - }, - { - "nodeType": "YulBlock", - "src": "10256:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10271:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10285:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10275:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10300:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10335:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10346:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10331:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10331:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10355:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "10310:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "10310:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "10300:6:13" - } - ] - } - ] - }, - { - "nodeType": "YulBlock", - "src": "10383:118:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "10398:16:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10412:2:13", - "type": "", - "value": "32" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "10402:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "10428:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "10463:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "10474:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "10459:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10459:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "10483:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "10438:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "10438:53:13" - }, - "variableNames": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "10428:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_addresst_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "10079:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "10090:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "10102:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "10110:6:13", - "type": "" - } - ], - "src": "10034:474:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10542:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10559:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10562:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10552:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "10552:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "10552:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10656:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10659:4:13", - "type": "", - "value": "0x22" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "10649:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "10649:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "10649:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10680:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10683:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "10673:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "10673:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "10673:15:13" - } - ] - }, - "name": "panic_error_0x22", - "nodeType": "YulFunctionDefinition", - "src": "10514:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10751:269:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10761:22:13", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "10775:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10781:1:13", - "type": "", - "value": "2" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "10771:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10771:12:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10761:6:13" - } - ] - }, - { - "nodeType": "YulVariableDeclaration", - "src": "10792:38:13", - "value": { - "arguments": [ - { - "name": "data", - "nodeType": "YulIdentifier", - "src": "10822:4:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10828:1:13", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10818:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10818:12:13" - }, - "variables": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulTypedName", - "src": "10796:18:13", - "type": "" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10869:51:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "10883:27:13", - "value": { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10897:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10905:4:13", - "type": "", - "value": "0x7f" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "10893:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "10893:17:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10883:6:13" - } - ] - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "10849:18:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "10842:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "10842:26:13" - }, - "nodeType": "YulIf", - "src": "10839:81:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "10972:42:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x22", - "nodeType": "YulIdentifier", - "src": "10986:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "10986:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "10986:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "outOfPlaceEncoding", - "nodeType": "YulIdentifier", - "src": "10936:18:13" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "10959:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "10967:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "10956:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "10956:14:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "10933:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "10933:38:13" - }, - "nodeType": "YulIf", - "src": "10930:84:13" - } - ] - }, - "name": "extract_byte_array_length", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "data", - "nodeType": "YulTypedName", - "src": "10735:4:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "10744:6:13", - "type": "" - } - ], - "src": "10700:320:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11132:125:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11154:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11162:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11150:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11150:14:13" - }, - { - "hexValue": "4552433732313a20617070726f76656420717565727920666f72206e6f6e6578", - "kind": "string", - "nodeType": "YulLiteral", - "src": "11166:34:13", - "type": "", - "value": "ERC721: approved query for nonex" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11143:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "11143:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "11143:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "11222:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11230:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11218:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11218:15:13" - }, - { - "hexValue": "697374656e7420746f6b656e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "11235:14:13", - "type": "", - "value": "istent token" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11211:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "11211:39:13" - }, - "nodeType": "YulExpressionStatement", - "src": "11211:39:13" - } - ] - }, - "name": "store_literal_in_memory_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "11124:6:13", - "type": "" - } - ], - "src": "11026:231:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11409:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11419:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11485:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11490:2:13", - "type": "", - "value": "44" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11426:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "11426:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11419:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11591:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "nodeType": "YulIdentifier", - "src": "11502:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "11502:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "11502:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "11604:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "11615:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11620:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11611:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11611:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "11604:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "11397:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "11405:3:13", - "type": "" - } - ], - "src": "11263:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "11806:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "11816:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11828:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11839:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11824:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11824:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11816:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11863:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "11874:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "11859:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11859:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11882:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "11888:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "11878:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "11878:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "11852:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "11852:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "11852:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "11908:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12042:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "11916:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "11916:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "11908:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "11786:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "11801:4:13", - "type": "" - } - ], - "src": "11635:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12166:114:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12188:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12196:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12184:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12184:14:13" - }, - { - "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "12200:34:13", - "type": "", - "value": "ERC721: approval to current owne" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12177:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "12177:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "12177:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "12256:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12264:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12252:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12252:15:13" - }, - { - "hexValue": "72", - "kind": "string", - "nodeType": "YulLiteral", - "src": "12269:3:13", - "type": "", - "value": "r" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12245:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "12245:28:13" - }, - "nodeType": "YulExpressionStatement", - "src": "12245:28:13" - } - ] - }, - "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "12158:6:13", - "type": "" - } - ], - "src": "12060:220:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12432:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12442:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12508:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12513:2:13", - "type": "", - "value": "33" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12449:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "12449:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12442:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12614:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "nodeType": "YulIdentifier", - "src": "12525:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "12525:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "12525:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "12627:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "12638:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12643:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12634:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12634:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "12627:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "12420:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "12428:3:13", - "type": "" - } - ], - "src": "12286:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "12829:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "12839:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12851:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12862:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12847:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12847:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12839:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12886:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12897:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12882:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12882:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12905:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "12911:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "12901:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "12901:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "12875:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "12875:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "12875:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "12931:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13065:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "12939:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "12939:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "12931:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "12809:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "12824:4:13", - "type": "" - } - ], - "src": "12658:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13189:137:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "13211:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13219:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13207:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13207:14:13" - }, - { - "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f74206f77", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13223:34:13", - "type": "", - "value": "ERC721: approve caller is not ow" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13200:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "13200:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "13200:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "13279:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13287:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13275:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13275:15:13" - }, - { - "hexValue": "6e6572206e6f7220617070726f76656420666f7220616c6c", - "kind": "string", - "nodeType": "YulLiteral", - "src": "13292:26:13", - "type": "", - "value": "ner nor approved for all" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13268:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "13268:51:13" - }, - "nodeType": "YulExpressionStatement", - "src": "13268:51:13" - } - ] - }, - "name": "store_literal_in_memory_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "13181:6:13", - "type": "" - } - ], - "src": "13083:243:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13478:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13488:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13554:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13559:2:13", - "type": "", - "value": "56" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "13495:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "13495:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13488:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13660:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "nodeType": "YulIdentifier", - "src": "13571:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "13571:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "13571:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "13673:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "13684:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13689:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13680:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13680:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "13673:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "13466:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "13474:3:13", - "type": "" - } - ], - "src": "13332:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "13875:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "13885:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13897:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13908:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13893:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13893:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13885:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13932:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "13943:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "13928:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13928:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13951:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "13957:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "13947:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "13947:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "13921:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "13921:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "13921:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "13977:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14111:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "13985:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "13985:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "13977:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "13855:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "13870:4:13", - "type": "" - } - ], - "src": "13704:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14235:130:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "14257:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14265:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14253:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14253:14:13" - }, - { - "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14269:34:13", - "type": "", - "value": "ERC721: transfer caller is not o" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14246:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "14246:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "14246:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "14325:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14333:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14321:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14321:15:13" - }, - { - "hexValue": "776e6572206e6f7220617070726f766564", - "kind": "string", - "nodeType": "YulLiteral", - "src": "14338:19:13", - "type": "", - "value": "wner nor approved" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14314:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "14314:44:13" - }, - "nodeType": "YulExpressionStatement", - "src": "14314:44:13" - } - ] - }, - "name": "store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "14227:6:13", - "type": "" - } - ], - "src": "14129:236:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14517:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14527:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14593:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14598:2:13", - "type": "", - "value": "49" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "14534:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "14534:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14527:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14699:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "nodeType": "YulIdentifier", - "src": "14610:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "14610:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "14610:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "14712:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "14723:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14728:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14719:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14719:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "14712:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "14505:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "14513:3:13", - "type": "" - } - ], - "src": "14371:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "14914:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "14924:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14936:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14947:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14932:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14932:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14924:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14971:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "14982:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "14967:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14967:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "14990:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "14996:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "14986:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "14986:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "14960:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "14960:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "14960:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "15016:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15150:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "15024:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "15024:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15016:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "14894:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "14909:4:13", - "type": "" - } - ], - "src": "14743:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15274:122:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "15296:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15304:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15292:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "15292:14:13" - }, - { - "hexValue": "4552433732313a206f776e657220717565727920666f72206e6f6e6578697374", - "kind": "string", - "nodeType": "YulLiteral", - "src": "15308:34:13", - "type": "", - "value": "ERC721: owner query for nonexist" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15285:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "15285:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "15285:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "15364:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15372:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15360:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "15360:15:13" - }, - { - "hexValue": "656e7420746f6b656e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "15377:11:13", - "type": "", - "value": "ent token" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15353:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "15353:36:13" - }, - "nodeType": "YulExpressionStatement", - "src": "15353:36:13" - } - ] - }, - "name": "store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "15266:6:13", - "type": "" - } - ], - "src": "15168:228:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15548:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15558:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15624:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15629:2:13", - "type": "", - "value": "41" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "15565:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "15565:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15558:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15730:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "nodeType": "YulIdentifier", - "src": "15641:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "15641:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "15641:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "15743:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "15754:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15759:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15750:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "15750:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "15743:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "15536:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "15544:3:13", - "type": "" - } - ], - "src": "15402:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "15945:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "15955:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "15967:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "15978:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15963:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "15963:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "15955:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16002:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16013:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "15998:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "15998:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16021:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16027:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "16017:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "16017:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "15991:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "15991:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "15991:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "16047:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16181:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "16055:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "16055:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16047:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "15925:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "15940:4:13", - "type": "" - } - ], - "src": "15774:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16305:123:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "16327:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16335:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16323:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "16323:14:13" - }, - { - "hexValue": "4552433732313a2062616c616e636520717565727920666f7220746865207a65", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16339:34:13", - "type": "", - "value": "ERC721: balance query for the ze" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16316:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "16316:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "16316:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "16395:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16403:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16391:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "16391:15:13" - }, - { - "hexValue": "726f2061646472657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "16408:12:13", - "type": "", - "value": "ro address" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "16384:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "16384:37:13" - }, - "nodeType": "YulExpressionStatement", - "src": "16384:37:13" - } - ] - }, - "name": "store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "16297:6:13", - "type": "" - } - ], - "src": "16199:229:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16580:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16590:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16656:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16661:2:13", - "type": "", - "value": "42" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "16597:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "16597:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16590:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16762:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "nodeType": "YulIdentifier", - "src": "16673:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "16673:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "16673:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "16775:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "16786:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "16791:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16782:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "16782:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "16775:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "16568:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "16576:3:13", - "type": "" - } - ], - "src": "16434:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "16977:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "16987:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "16999:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17010:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "16995:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "16995:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "16987:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17034:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17045:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17030:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "17030:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17053:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "17059:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "17049:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "17049:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17023:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "17023:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "17023:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "17079:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17213:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "17087:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "17087:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "17079:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "16957:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "16972:4:13", - "type": "" - } - ], - "src": "16806:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17337:128:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "17359:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17367:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17355:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "17355:14:13" - }, - { - "hexValue": "4552433732314d657461646174613a2055524920717565727920666f72206e6f", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17371:34:13", - "type": "", - "value": "ERC721Metadata: URI query for no" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17348:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "17348:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "17348:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "17427:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17435:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17423:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "17423:15:13" - }, - { - "hexValue": "6e6578697374656e7420746f6b656e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "17440:17:13", - "type": "", - "value": "nexistent token" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "17416:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "17416:42:13" - }, - "nodeType": "YulExpressionStatement", - "src": "17416:42:13" - } - ] - }, - "name": "store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "17329:6:13", - "type": "" - } - ], - "src": "17231:234:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "17617:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "17627:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17693:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17698:2:13", - "type": "", - "value": "47" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "17634:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "17634:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17627:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17799:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "nodeType": "YulIdentifier", - "src": "17710:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "17710:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "17710:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "17812:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "17823:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "17828:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "17819:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "17819:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "17812:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "17605:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "17613:3:13", - "type": "" - } - ], - "src": "17471:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18014:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18024:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18036:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18047:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18032:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "18032:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18024:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18071:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18082:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18067:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "18067:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18090:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "18096:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "18086:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "18086:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "18060:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "18060:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "18060:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "18116:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18250:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "18124:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "18124:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "18116:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "17994:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "18009:4:13", - "type": "" - } - ], - "src": "17843:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18382:34:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "18392:18:13", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18407:3:13" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "18392:11:13" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "18354:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "18359:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "18370:11:13", - "type": "" - } - ], - "src": "18268:148:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18532:267:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "18542:53:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "18589:5:13" - } - ], - "functionName": { - "name": "array_length_t_string_memory_ptr", - "nodeType": "YulIdentifier", - "src": "18556:32:13" - }, - "nodeType": "YulFunctionCall", - "src": "18556:39:13" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "18546:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "18604:96:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18688:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18693:6:13" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "18611:76:13" - }, - "nodeType": "YulFunctionCall", - "src": "18611:89:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18604:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "18735:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "18742:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18731:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "18731:16:13" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18749:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18754:6:13" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "18709:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "18709:52:13" - }, - "nodeType": "YulExpressionStatement", - "src": "18709:52:13" - }, - { - "nodeType": "YulAssignment", - "src": "18770:23:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "18781:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "18786:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "18777:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "18777:16:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "18770:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "18513:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "18520:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "18528:3:13", - "type": "" - } - ], - "src": "18422:377:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "18989:251:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19000:102:13", - "value": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "19089:6:13" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19098:3:13" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "19007:81:13" - }, - "nodeType": "YulFunctionCall", - "src": "19007:95:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19000:3:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "19112:102:13", - "value": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "19201:6:13" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19210:3:13" - } - ], - "functionName": { - "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", - "nodeType": "YulIdentifier", - "src": "19119:81:13" - }, - "nodeType": "YulFunctionCall", - "src": "19119:95:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19112:3:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "19224:10:13", - "value": { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19231:3:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "19224:3:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "18960:3:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "18966:6:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "18974:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "18985:3:13", - "type": "" - } - ], - "src": "18805:435:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19352:125:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19374:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19382:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19370:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "19370:14:13" - }, - { - "hexValue": "4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19386:34:13", - "type": "", - "value": "ERC721: operator query for nonex" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19363:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "19363:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "19363:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "19442:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19450:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19438:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "19438:15:13" - }, - { - "hexValue": "697374656e7420746f6b656e", - "kind": "string", - "nodeType": "YulLiteral", - "src": "19455:14:13", - "type": "", - "value": "istent token" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "19431:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "19431:39:13" - }, - "nodeType": "YulExpressionStatement", - "src": "19431:39:13" - } - ] - }, - "name": "store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "19344:6:13", - "type": "" - } - ], - "src": "19246:231:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "19629:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "19639:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19705:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19710:2:13", - "type": "", - "value": "44" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "19646:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "19646:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19639:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19811:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "nodeType": "YulIdentifier", - "src": "19722:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "19722:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "19722:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "19824:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "19835:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "19840:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "19831:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "19831:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "19824:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "19617:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "19625:3:13", - "type": "" - } - ], - "src": "19483:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20026:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20036:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20048:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20059:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20044:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20044:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20036:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20083:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20094:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20079:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20079:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20102:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "20108:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "20098:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20098:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20072:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "20072:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "20072:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "20128:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20262:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20136:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "20136:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "20128:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "20006:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "20021:4:13", - "type": "" - } - ], - "src": "19855:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20386:118:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "20408:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20416:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20404:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20404:14:13" - }, - { - "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20420:34:13", - "type": "", - "value": "ERC721: transfer from incorrect " - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20397:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "20397:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "20397:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "20476:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20484:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20472:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20472:15:13" - }, - { - "hexValue": "6f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "20489:7:13", - "type": "", - "value": "owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "20465:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "20465:32:13" - }, - "nodeType": "YulExpressionStatement", - "src": "20465:32:13" - } - ] - }, - "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "20378:6:13", - "type": "" - } - ], - "src": "20280:224:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "20656:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "20666:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20732:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20737:2:13", - "type": "", - "value": "37" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "20673:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "20673:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20666:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20838:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "nodeType": "YulIdentifier", - "src": "20749:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "20749:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "20749:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "20851:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "20862:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "20867:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "20858:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "20858:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "20851:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "20644:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "20652:3:13", - "type": "" - } - ], - "src": "20510:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21053:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21063:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21075:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21086:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21071:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21071:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21063:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21110:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21121:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21106:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21106:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21129:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "21135:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "21125:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21125:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21099:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "21099:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "21099:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "21155:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21289:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "21163:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "21163:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "21155:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "21033:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "21048:4:13", - "type": "" - } - ], - "src": "20882:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21413:117:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "21435:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21443:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21431:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21431:14:13" - }, - { - "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21447:34:13", - "type": "", - "value": "ERC721: transfer to the zero add" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21424:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "21424:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "21424:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "21503:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21511:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21499:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21499:15:13" - }, - { - "hexValue": "72657373", - "kind": "string", - "nodeType": "YulLiteral", - "src": "21516:6:13", - "type": "", - "value": "ress" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "21492:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "21492:31:13" - }, - "nodeType": "YulExpressionStatement", - "src": "21492:31:13" - } - ] - }, - "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "21405:6:13", - "type": "" - } - ], - "src": "21307:223:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "21682:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "21692:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21758:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21763:2:13", - "type": "", - "value": "36" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "21699:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "21699:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21692:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21864:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "nodeType": "YulIdentifier", - "src": "21775:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "21775:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "21775:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "21877:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "21888:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "21893:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "21884:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "21884:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "21877:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "21670:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "21678:3:13", - "type": "" - } - ], - "src": "21536:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22079:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22089:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22101:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22112:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22097:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "22097:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22089:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22136:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22147:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "22132:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "22132:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22155:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "22161:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "22151:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "22151:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22125:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "22125:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22125:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "22181:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22315:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "22189:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "22189:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "22181:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "22059:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "22074:4:13", - "type": "" - } - ], - "src": "21908:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22361:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22378:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22381:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22371:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "22371:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22371:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22475:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22478:4:13", - "type": "", - "value": "0x11" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "22468:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "22468:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22468:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22499:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22502:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "22492:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "22492:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22492:15:13" - } - ] - }, - "name": "panic_error_0x11", - "nodeType": "YulFunctionDefinition", - "src": "22333:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22564:146:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22574:25:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22597:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "22579:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "22579:20:13" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22574:1:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "22608:25:13", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22631:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "22613:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "22613:20:13" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22608:1:13" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22655:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "22657:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "22657:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22657:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22649:1:13" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22652:1:13" - } - ], - "functionName": { - "name": "lt", - "nodeType": "YulIdentifier", - "src": "22646:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "22646:8:13" - }, - "nodeType": "YulIf", - "src": "22643:34:13" - }, - { - "nodeType": "YulAssignment", - "src": "22687:17:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22699:1:13" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22702:1:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "22695:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "22695:9:13" - }, - "variableNames": [ - { - "name": "diff", - "nodeType": "YulIdentifier", - "src": "22687:4:13" - } - ] - } - ] - }, - "name": "checked_sub_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "22550:1:13", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "22553:1:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "diff", - "nodeType": "YulTypedName", - "src": "22559:4:13", - "type": "" - } - ], - "src": "22519:191:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22760:261:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "22770:25:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22793:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "22775:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "22775:20:13" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22770:1:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "22804:25:13", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22827:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "22809:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "22809:20:13" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22804:1:13" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "22967:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "22969:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "22969:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "22969:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "22888:1:13" - }, - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "22895:66:13", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "22963:1:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "22891:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "22891:74:13" - } - ], - "functionName": { - "name": "gt", - "nodeType": "YulIdentifier", - "src": "22885:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "22885:81:13" - }, - "nodeType": "YulIf", - "src": "22882:107:13" - }, - { - "nodeType": "YulAssignment", - "src": "22999:16:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "23010:1:13" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "23013:1:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23006:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23006:9:13" - }, - "variableNames": [ - { - "name": "sum", - "nodeType": "YulIdentifier", - "src": "22999:3:13" - } - ] - } - ] - }, - "name": "checked_add_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "22747:1:13", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "22750:1:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "sum", - "nodeType": "YulTypedName", - "src": "22756:3:13", - "type": "" - } - ], - "src": "22716:305:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23133:69:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "23155:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23163:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23151:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23151:14:13" - }, - { - "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "23167:27:13", - "type": "", - "value": "ERC721: approve to caller" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23144:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "23144:51:13" - }, - "nodeType": "YulExpressionStatement", - "src": "23144:51:13" - } - ] - }, - "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "23125:6:13", - "type": "" - } - ], - "src": "23027:175:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23354:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23364:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "23430:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23435:2:13", - "type": "", - "value": "25" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "23371:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "23371:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "23364:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "23536:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "nodeType": "YulIdentifier", - "src": "23447:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "23447:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "23447:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "23549:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "23560:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23565:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23556:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23556:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "23549:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "23342:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "23350:3:13", - "type": "" - } - ], - "src": "23208:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "23751:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "23761:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23773:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23784:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23769:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23769:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23761:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23808:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "23819:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "23804:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23804:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23827:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "23833:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "23823:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "23823:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "23797:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "23797:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "23797:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "23853:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23987:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "23861:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "23861:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "23853:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "23731:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "23746:4:13", - "type": "" - } - ], - "src": "23580:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24111:131:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "24133:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24141:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24129:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24129:14:13" - }, - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24145:34:13", - "type": "", - "value": "ERC721: transfer to non ERC721Re" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24122:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "24122:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "24122:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "24201:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24209:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24197:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24197:15:13" - }, - { - "hexValue": "63656976657220696d706c656d656e746572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "24214:20:13", - "type": "", - "value": "ceiver implementer" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24190:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "24190:45:13" - }, - "nodeType": "YulExpressionStatement", - "src": "24190:45:13" - } - ] - }, - "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "24103:6:13", - "type": "" - } - ], - "src": "24005:237:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24394:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "24404:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24470:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24475:2:13", - "type": "", - "value": "50" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "24411:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "24411:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24404:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24576:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "nodeType": "YulIdentifier", - "src": "24487:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "24487:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "24487:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "24589:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "24600:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24605:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24596:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24596:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "24589:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "24382:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "24390:3:13", - "type": "" - } - ], - "src": "24248:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "24791:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "24801:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24813:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24824:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24809:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24809:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24801:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24848:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "24859:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "24844:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24844:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24867:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "24873:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "24863:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "24863:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "24837:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "24837:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "24837:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "24893:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "25027:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "24901:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "24901:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "24893:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "24771:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "24786:4:13", - "type": "" - } - ], - "src": "24620:419:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25088:190:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25098:33:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25125:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25107:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "25107:24:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25098:5:13" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25221:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x11", - "nodeType": "YulIdentifier", - "src": "25223:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "25223:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25223:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25146:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25153:66:13", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "25143:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "25143:77:13" - }, - "nodeType": "YulIf", - "src": "25140:103:13" - }, - { - "nodeType": "YulAssignment", - "src": "25252:20:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "25263:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25270:1:13", - "type": "", - "value": "1" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "25259:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "25259:13:13" - }, - "variableNames": [ - { - "name": "ret", - "nodeType": "YulIdentifier", - "src": "25252:3:13" - } - ] - } - ] - }, - "name": "increment_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "25074:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "ret", - "nodeType": "YulTypedName", - "src": "25084:3:13", - "type": "" - } - ], - "src": "25045:233:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25312:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25329:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25332:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25322:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25322:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25322:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25426:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25429:4:13", - "type": "", - "value": "0x12" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25419:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25419:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25419:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25450:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25453:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "25443:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25443:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25443:15:13" - } - ] - }, - "name": "panic_error_0x12", - "nodeType": "YulFunctionDefinition", - "src": "25284:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25512:143:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25522:25:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25545:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25527:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "25527:20:13" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25522:1:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "25556:25:13", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25579:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25561:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "25561:20:13" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25556:1:13" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25603:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "25605:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "25605:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25605:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25600:1:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25593:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25593:9:13" - }, - "nodeType": "YulIf", - "src": "25590:35:13" - }, - { - "nodeType": "YulAssignment", - "src": "25635:14:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25644:1:13" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25647:1:13" - } - ], - "functionName": { - "name": "div", - "nodeType": "YulIdentifier", - "src": "25640:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "25640:9:13" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "25635:1:13" - } - ] - } - ] - }, - "name": "checked_div_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "25501:1:13", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "25504:1:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "25510:1:13", - "type": "" - } - ], - "src": "25470:185:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25695:142:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "25705:25:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25728:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25710:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "25710:20:13" - }, - "variableNames": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25705:1:13" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "25739:25:13", - "value": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25762:1:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "25744:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "25744:20:13" - }, - "variableNames": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25739:1:13" - } - ] - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25786:22:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "panic_error_0x12", - "nodeType": "YulIdentifier", - "src": "25788:16:13" - }, - "nodeType": "YulFunctionCall", - "src": "25788:18:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25788:18:13" - } - ] - }, - "condition": { - "arguments": [ - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25783:1:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "25776:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25776:9:13" - }, - "nodeType": "YulIf", - "src": "25773:35:13" - }, - { - "nodeType": "YulAssignment", - "src": "25817:14:13", - "value": { - "arguments": [ - { - "name": "x", - "nodeType": "YulIdentifier", - "src": "25826:1:13" - }, - { - "name": "y", - "nodeType": "YulIdentifier", - "src": "25829:1:13" - } - ], - "functionName": { - "name": "mod", - "nodeType": "YulIdentifier", - "src": "25822:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "25822:9:13" - }, - "variableNames": [ - { - "name": "r", - "nodeType": "YulIdentifier", - "src": "25817:1:13" - } - ] - } - ] - }, - "name": "mod_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "x", - "nodeType": "YulTypedName", - "src": "25684:1:13", - "type": "" - }, - { - "name": "y", - "nodeType": "YulTypedName", - "src": "25687:1:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "r", - "nodeType": "YulTypedName", - "src": "25693:1:13", - "type": "" - } - ], - "src": "25661:176:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "25871:152:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25888:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25891:77:13", - "type": "", - "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25881:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25881:88:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25881:88:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25985:1:13", - "type": "", - "value": "4" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "25988:4:13", - "type": "", - "value": "0x32" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "25978:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "25978:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "25978:15:13" - }, - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26009:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26012:4:13", - "type": "", - "value": "0x24" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "26002:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "26002:15:13" - }, - "nodeType": "YulExpressionStatement", - "src": "26002:15:13" - } - ] - }, - "name": "panic_error_0x32", - "nodeType": "YulFunctionDefinition", - "src": "25843:180:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26087:40:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26098:22:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "26114:5:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "26108:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "26108:12:13" - }, - "variableNames": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26098:6:13" - } - ] - } - ] - }, - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "26070:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26080:6:13", - "type": "" - } - ], - "src": "26029:98:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26228:73:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26245:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26250:6:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "26238:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "26238:19:13" - }, - "nodeType": "YulExpressionStatement", - "src": "26238:19:13" - }, - { - "nodeType": "YulAssignment", - "src": "26266:29:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26285:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26290:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26281:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "26281:14:13" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "26266:11:13" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "26200:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26205:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "26216:11:13", - "type": "" - } - ], - "src": "26133:168:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26397:270:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "26407:52:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "26453:5:13" - } - ], - "functionName": { - "name": "array_length_t_bytes_memory_ptr", - "nodeType": "YulIdentifier", - "src": "26421:31:13" - }, - "nodeType": "YulFunctionCall", - "src": "26421:38:13" - }, - "variables": [ - { - "name": "length", - "nodeType": "YulTypedName", - "src": "26411:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "26468:77:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26533:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26538:6:13" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "26475:57:13" - }, - "nodeType": "YulFunctionCall", - "src": "26475:70:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26468:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "26580:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26587:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26576:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "26576:16:13" - }, - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26594:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26599:6:13" - } - ], - "functionName": { - "name": "copy_memory_to_memory", - "nodeType": "YulIdentifier", - "src": "26554:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "26554:52:13" - }, - "nodeType": "YulExpressionStatement", - "src": "26554:52:13" - }, - { - "nodeType": "YulAssignment", - "src": "26615:46:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "26626:3:13" - }, - { - "arguments": [ - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "26653:6:13" - } - ], - "functionName": { - "name": "round_up_to_mul_of_32", - "nodeType": "YulIdentifier", - "src": "26631:21:13" - }, - "nodeType": "YulFunctionCall", - "src": "26631:29:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26622:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "26622:39:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "26615:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "26378:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "26385:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "26393:3:13", - "type": "" - } - ], - "src": "26307:360:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "26873:440:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "26883:27:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26895:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26906:3:13", - "type": "", - "value": "128" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26891:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "26891:19:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "26883:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "26964:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "26977:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "26988:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "26973:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "26973:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "26920:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "26920:71:13" - }, - "nodeType": "YulExpressionStatement", - "src": "26920:71:13" - }, - { - "expression": { - "arguments": [ - { - "name": "value1", - "nodeType": "YulIdentifier", - "src": "27045:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27058:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27069:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27054:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27054:18:13" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "27001:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "27001:72:13" - }, - "nodeType": "YulExpressionStatement", - "src": "27001:72:13" - }, - { - "expression": { - "arguments": [ - { - "name": "value2", - "nodeType": "YulIdentifier", - "src": "27127:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27140:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27151:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27136:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27136:18:13" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "27083:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "27083:72:13" - }, - "nodeType": "YulExpressionStatement", - "src": "27083:72:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27176:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27187:2:13", - "type": "", - "value": "96" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27172:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27172:18:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27196:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27202:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "27192:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27192:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "27165:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "27165:48:13" - }, - "nodeType": "YulExpressionStatement", - "src": "27165:48:13" - }, - { - "nodeType": "YulAssignment", - "src": "27222:84:13", - "value": { - "arguments": [ - { - "name": "value3", - "nodeType": "YulIdentifier", - "src": "27292:6:13" - }, - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27301:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "27230:61:13" - }, - "nodeType": "YulFunctionCall", - "src": "27230:76:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "27222:4:13" - } - ] - } - ] - }, - "name": "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", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "26821:9:13", - "type": "" - }, - { - "name": "value3", - "nodeType": "YulTypedName", - "src": "26833:6:13", - "type": "" - }, - { - "name": "value2", - "nodeType": "YulTypedName", - "src": "26841:6:13", - "type": "" - }, - { - "name": "value1", - "nodeType": "YulTypedName", - "src": "26849:6:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "26857:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "26868:4:13", - "type": "" - } - ], - "src": "26673:640:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27381:79:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "27391:22:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "27406:6:13" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "27400:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "27400:13:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27391:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "27448:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_bytes4", - "nodeType": "YulIdentifier", - "src": "27422:25:13" - }, - "nodeType": "YulFunctionCall", - "src": "27422:32:13" - }, - "nodeType": "YulExpressionStatement", - "src": "27422:32:13" - } - ] - }, - "name": "abi_decode_t_bytes4_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "27359:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "27367:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "27375:5:13", - "type": "" - } - ], - "src": "27319:141:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "27542:273:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "27588:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "27590:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "27590:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "27590:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "27563:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27572:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "27559:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27559:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27584:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "27555:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27555:32:13" - }, - "nodeType": "YulIf", - "src": "27552:119:13" - }, - { - "nodeType": "YulBlock", - "src": "27681:127:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "27696:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "27710:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "27700:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "27725:73:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "27770:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "27781:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "27766:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "27766:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "27790:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_bytes4_fromMemory", - "nodeType": "YulIdentifier", - "src": "27735:30:13" - }, - "nodeType": "YulFunctionCall", - "src": "27735:63:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "27725:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_bytes4_fromMemory", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "27512:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "27523:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "27535:6:13", - "type": "" - } - ], - "src": "27466:349:13" - } - ] - }, - "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_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 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_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_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_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approved query for nonex\")\n\n mstore(add(memPtr, 32), \"istent token\")\n\n }\n\n function abi_encode_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d__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_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack( tail)\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_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not ow\")\n\n mstore(add(memPtr, 32), \"ner nor approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 56)\n store_literal_in_memory_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d__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_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer caller is not o\")\n\n mstore(add(memPtr, 32), \"wner nor approved\")\n\n }\n\n function abi_encode_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 49)\n store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2__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_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: owner query for nonexist\")\n\n mstore(add(memPtr, 32), \"ent token\")\n\n }\n\n function abi_encode_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397__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_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: balance query for the ze\")\n\n mstore(add(memPtr, 32), \"ro address\")\n\n }\n\n function abi_encode_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba__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_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Metadata: URI query for no\")\n\n mstore(add(memPtr, 32), \"nexistent token\")\n\n }\n\n function abi_encode_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb__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_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_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 abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\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_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: operator query for nonex\")\n\n mstore(add(memPtr, 32), \"istent token\")\n\n }\n\n function abi_encode_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c__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_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack( tail)\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 panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function 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_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 increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function checked_div_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n\n r := div(x, y)\n }\n\n function mod_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\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}\n", - "id": 13, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "628:13658:0:-:0;;;1390:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1464:5;1456;:13;;;;;;;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;;;;;;;:::i;:::-;;1390:113;;628:13658;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:13:-;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:853::-;2824:6;2832;2881:2;2869:9;2860:7;2856:23;2852:32;2849:119;;;2887:79;;:::i;:::-;2849:119;3028:1;3017:9;3013:17;3007:24;3058:18;3050:6;3047:30;3044:117;;;3080:79;;:::i;:::-;3044:117;3185:74;3251:7;3242:6;3231:9;3227:22;3185:74;:::i;:::-;3175:84;;2978:291;3329:2;3318:9;3314:18;3308:25;3360:18;3352:6;3349:30;3346:117;;;3382:79;;:::i;:::-;3346:117;3487:74;3553:7;3544:6;3533:9;3529:22;3487:74;:::i;:::-;3477:84;;3279:292;2725:853;;;;;:::o;3584:180::-;3632:77;3629:1;3622:88;3729:4;3726:1;3719:15;3753:4;3750:1;3743:15;3770:320;3814:6;3851:1;3845:4;3841:12;3831:22;;3898:1;3892:4;3888:12;3919:18;3909:81;;3975:4;3967:6;3963:17;3953:27;;3909:81;4037:2;4029:6;4026:14;4006:18;4003:38;4000:84;;4056:18;;:::i;:::-;4000:84;3821:269;3770:320;;;:::o;628:13658:0:-;;;;;;;", - "deployedSourceMap": "628:13658:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570:300;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2488:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4000:217;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3538:401;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4727:330;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5123:179;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2191:235;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:205;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2650:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4284:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5368:320;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2818:329;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4503:162;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;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;2488:98::-;2542:13;2574:5;2567:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2488:98;:::o;4000:217::-;4076:7;4103:16;4111:7;4103;:16::i;:::-;4095:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4186:15;:24;4202:7;4186:24;;;;;;;;;;;;;;;;;;;;;4179:31;;4000:217;;;:::o;3538:401::-;3618:13;3634:23;3649:7;3634:14;:23::i;:::-;3618:39;;3681:5;3675:11;;:2;:11;;;3667:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3772:5;3756:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3781:37;3798:5;3805:12;:10;:12::i;:::-;3781:16;:37::i;:::-;3756:62;3735:165;;;;;;;;;;;;:::i;:::-;;;;;;;;;3911:21;3920:2;3924:7;3911:8;:21::i;:::-;3608:331;3538:401;;:::o;4727:330::-;4916:41;4935:12;:10;:12::i;:::-;4949:7;4916:18;:41::i;:::-;4908:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5022:28;5032:4;5038:2;5042:7;5022:9;:28::i;:::-;4727:330;;;:::o;5123:179::-;5256:39;5273:4;5279:2;5283:7;5256:39;;;;;;;;;;;;:16;:39::i;:::-;5123:179;;;:::o;2191:235::-;2263:7;2282:13;2298:7;:16;2306:7;2298:16;;;;;;;;;;;;;;;;;;;;;2282:32;;2349:1;2332:19;;:5;:19;;;2324:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2414:5;2407:12;;;2191:235;;;:::o;1929:205::-;2001:7;2045:1;2028:19;;:5;:19;;;2020:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;2111:9;:16;2121:5;2111:16;;;;;;;;;;;;;;;;2104:23;;1929:205;;;:::o;2650:102::-;2706:13;2738:7;2731:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2650:102;:::o;4284:153::-;4378:52;4397:12;:10;:12::i;:::-;4411:8;4421;4378:18;:52::i;:::-;4284:153;;:::o;5368:320::-;5537:41;5556:12;:10;:12::i;:::-;5570:7;5537:18;:41::i;:::-;5529:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5642:39;5656:4;5662:2;5666:7;5675:5;5642:13;:39::i;:::-;5368:320;;;;:::o;2818:329::-;2891:13;2924:16;2932:7;2924;:16::i;:::-;2916:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;3003:21;3027:10;:8;:10::i;:::-;3003:34;;3078:1;3060:7;3054:21;:25;:86;;;;;;;;;;;;;;;;;3106:7;3115:18;:7;:16;:18::i;:::-;3089:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3054:86;3047:93;;;2818:329;;;:::o;4503:162::-;4600:4;4623:18;:25;4642:5;4623:25;;;;;;;;;;;;;;;:35;4649:8;4623:35;;;;;;;;;;;;;;;;;;;;;;;;;4616:42;;4503:162;;;;:::o;829:155:9:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;7160:125:0:-;7225:4;7276:1;7248:30;;:7;:16;7256:7;7248:16;;;;;;;;;;;;;;;;;;;;;:30;;;;7241:37;;7160:125;;;:::o;640:96:6:-;693:7;719:10;712:17;;640:96;:::o;11169:171:0:-;11270:2;11243:15;:24;11259:7;11243:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;11325:7;11321:2;11287:46;;11296:23;11311:7;11296:14;:23::i;:::-;11287:46;;;;;;;;;;;;11169:171;;:::o;7443:344::-;7536:4;7560:16;7568:7;7560;:16::i;:::-;7552:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7635:13;7651:23;7666:7;7651:14;:23::i;:::-;7635:39;;7703:5;7692:16;;:7;:16;;;:52;;;;7712:32;7729:5;7736:7;7712:16;:32::i;:::-;7692:52;:87;;;;7772:7;7748:31;;:20;7760:7;7748:11;:20::i;:::-;:31;;;7692:87;7684:96;;;7443:344;;;;:::o;10453:605::-;10607:4;10580:31;;:23;10595:7;10580:14;:23::i;:::-;:31;;;10572:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;10685:1;10671:16;;:2;:16;;;10663:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;10739:39;10760:4;10766:2;10770:7;10739:20;:39::i;:::-;10840:29;10857:1;10861:7;10840:8;:29::i;:::-;10899:1;10880:9;:15;10890:4;10880:15;;;;;;;;;;;;;;;;:20;;;;;;;:::i;:::-;;;;;;;;10927:1;10910:9;:13;10920:2;10910:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;10957:2;10938:7;:16;10946:7;10938:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;10994:7;10990:2;10975:27;;10984:4;10975:27;;;;;;;;;;;;11013:38;11033:4;11039:2;11043:7;11013:19;:38::i;:::-;10453:605;;;:::o;11475:307::-;11625:8;11616:17;;:5;:17;;;11608:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;11711:8;11673:18;:25;11692:5;11673:25;;;;;;;;;;;;;;;:35;11699:8;11673:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;11756:8;11734:41;;11749:5;11734:41;;;11766:8;11734:41;;;;;;:::i;:::-;;;;;;;;11475:307;;;:::o;6550:::-;6701:28;6711:4;6717:2;6721:7;6701:9;:28::i;:::-;6747:48;6770:4;6776:2;6780:7;6789:5;6747:22;:48::i;:::-;6739:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;6550:307;;;;:::o;3389:92::-;3440:13;3465:9;;;;;;;;;;;;;;3389:92;:::o;328:703:8:-;384:13;610:1;601:5;:10;597:51;;627:10;;;;;;;;;;;;;;;;;;;;;597:51;657:12;672:5;657:20;;687:14;711:75;726:1;718:4;:9;711:75;;743:8;;;;;:::i;:::-;;;;773:2;765:10;;;;;:::i;:::-;;;711:75;;;795:19;827:6;817:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;795:39;;844:150;860:1;851:5;:10;844:150;;887:1;877:11;;;;;:::i;:::-;;;953:2;945:5;:10;;;;:::i;:::-;932:2;:24;;;;:::i;:::-;919:39;;902:6;909;902:14;;;;;;;;:::i;:::-;;;;;:56;;;;;;;;;;;981:2;972:11;;;;;:::i;:::-;;;844:150;;;1017:6;1003:21;;;;;328:703;;;;:::o;13669:122:0:-;;;;:::o;14163:121::-;;;;:::o;12335:778::-;12485:4;12505:15;:2;:13;;;:15::i;:::-;12501:606;;;12556:2;12540:36;;;12577:12;:10;:12::i;:::-;12591:4;12597:7;12606:5;12540:72;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;12536:519;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12796:1;12779:6;:13;:18;12775:266;;12821:60;;;;;;;;;;:::i;:::-;;;;;;;;12775:266;12993:6;12987:13;12978:6;12974:2;12970:15;12963:38;12536:519;12672:41;;;12662:51;;;:6;:51;;;;12655:58;;;;;12501:606;13092:4;13085:11;;12335:778;;;;;;;:::o;1175:320:5:-;1235:4;1487:1;1465:7;:19;;;:23;1458:30;;1175:320;;;:::o;7:75:13:-;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:619::-;5015:6;5023;5031;5080:2;5068:9;5059:7;5055:23;5051:32;5048:119;;;5086:79;;:::i;:::-;5048:119;5206:1;5231:53;5276:7;5267:6;5256:9;5252:22;5231:53;:::i;:::-;5221:63;;5177:117;5333:2;5359:53;5404:7;5395:6;5384:9;5380:22;5359:53;:::i;:::-;5349:63;;5304:118;5461:2;5487:53;5532:7;5523:6;5512:9;5508:22;5487:53;:::i;:::-;5477:63;;5432:118;4938:619;;;;;:::o;5563:329::-;5622:6;5671:2;5659:9;5650:7;5646:23;5642:32;5639:119;;;5677:79;;:::i;:::-;5639:119;5797:1;5822:53;5867:7;5858:6;5847:9;5843:22;5822:53;:::i;:::-;5812:63;;5768:117;5563:329;;;;:::o;5898:118::-;5985:24;6003:5;5985:24;:::i;:::-;5980:3;5973:37;5898:118;;:::o;6022:222::-;6115:4;6153:2;6142:9;6138:18;6130:26;;6166:71;6234:1;6223:9;6219:17;6210:6;6166:71;:::i;:::-;6022:222;;;;:::o;6250:116::-;6320:21;6335:5;6320:21;:::i;:::-;6313:5;6310:32;6300:60;;6356:1;6353;6346:12;6300:60;6250:116;:::o;6372:133::-;6415:5;6453:6;6440:20;6431:29;;6469:30;6493:5;6469:30;:::i;:::-;6372:133;;;;:::o;6511:468::-;6576:6;6584;6633:2;6621:9;6612:7;6608:23;6604:32;6601:119;;;6639:79;;:::i;:::-;6601:119;6759:1;6784:53;6829:7;6820:6;6809:9;6805:22;6784:53;:::i;:::-;6774:63;;6730:117;6886:2;6912:50;6954:7;6945:6;6934:9;6930:22;6912:50;:::i;:::-;6902:60;;6857:115;6511:468;;;;;:::o;6985:117::-;7094:1;7091;7084:12;7108:117;7217:1;7214;7207:12;7231:180;7279:77;7276:1;7269:88;7376:4;7373:1;7366:15;7400:4;7397:1;7390:15;7417:281;7500:27;7522:4;7500:27;:::i;:::-;7492:6;7488:40;7630:6;7618:10;7615:22;7594:18;7582:10;7579:34;7576:62;7573:88;;;7641:18;;:::i;:::-;7573:88;7681:10;7677:2;7670:22;7460:238;7417:281;;:::o;7704:129::-;7738:6;7765:20;;:::i;:::-;7755:30;;7794:33;7822:4;7814:6;7794:33;:::i;:::-;7704:129;;;:::o;7839:307::-;7900:4;7990:18;7982:6;7979:30;7976:56;;;8012:18;;:::i;:::-;7976:56;8050:29;8072:6;8050:29;:::i;:::-;8042:37;;8134:4;8128;8124:15;8116:23;;7839:307;;;:::o;8152:154::-;8236:6;8231:3;8226;8213:30;8298:1;8289:6;8284:3;8280:16;8273:27;8152:154;;;:::o;8312:410::-;8389:5;8414:65;8430:48;8471:6;8430:48;:::i;:::-;8414:65;:::i;:::-;8405:74;;8502:6;8495:5;8488:21;8540:4;8533:5;8529:16;8578:3;8569:6;8564:3;8560:16;8557:25;8554:112;;;8585:79;;:::i;:::-;8554:112;8675:41;8709:6;8704:3;8699;8675:41;:::i;:::-;8395:327;8312:410;;;;;:::o;8741:338::-;8796:5;8845:3;8838:4;8830:6;8826:17;8822:27;8812:122;;8853:79;;:::i;:::-;8812:122;8970:6;8957:20;8995:78;9069:3;9061:6;9054:4;9046:6;9042:17;8995:78;:::i;:::-;8986:87;;8802:277;8741:338;;;;:::o;9085:943::-;9180:6;9188;9196;9204;9253:3;9241:9;9232:7;9228:23;9224:33;9221:120;;;9260:79;;:::i;:::-;9221:120;9380:1;9405:53;9450:7;9441:6;9430:9;9426:22;9405:53;:::i;:::-;9395:63;;9351:117;9507:2;9533:53;9578:7;9569:6;9558:9;9554:22;9533:53;:::i;:::-;9523:63;;9478:118;9635:2;9661:53;9706:7;9697:6;9686:9;9682:22;9661:53;:::i;:::-;9651:63;;9606:118;9791:2;9780:9;9776:18;9763:32;9822:18;9814:6;9811:30;9808:117;;;9844:79;;:::i;:::-;9808:117;9949:62;10003:7;9994:6;9983:9;9979:22;9949:62;:::i;:::-;9939:72;;9734:287;9085:943;;;;;;;:::o;10034:474::-;10102:6;10110;10159:2;10147:9;10138:7;10134:23;10130:32;10127:119;;;10165:79;;:::i;:::-;10127:119;10285:1;10310:53;10355:7;10346:6;10335:9;10331:22;10310:53;:::i;:::-;10300:63;;10256:117;10412:2;10438:53;10483:7;10474:6;10463:9;10459:22;10438:53;:::i;:::-;10428:63;;10383:118;10034:474;;;;;:::o;10514:180::-;10562:77;10559:1;10552:88;10659:4;10656:1;10649:15;10683:4;10680:1;10673:15;10700:320;10744:6;10781:1;10775:4;10771:12;10761:22;;10828:1;10822:4;10818:12;10849:18;10839:81;;10905:4;10897:6;10893:17;10883:27;;10839:81;10967:2;10959:6;10956:14;10936:18;10933:38;10930:84;;10986:18;;:::i;:::-;10930:84;10751:269;10700:320;;;:::o;11026:231::-;11166:34;11162:1;11154:6;11150:14;11143:58;11235:14;11230:2;11222:6;11218:15;11211:39;11026:231;:::o;11263:366::-;11405:3;11426:67;11490:2;11485:3;11426:67;:::i;:::-;11419:74;;11502:93;11591:3;11502:93;:::i;:::-;11620:2;11615:3;11611:12;11604:19;;11263:366;;;:::o;11635:419::-;11801:4;11839:2;11828:9;11824:18;11816:26;;11888:9;11882:4;11878:20;11874:1;11863:9;11859:17;11852:47;11916:131;12042:4;11916:131;:::i;:::-;11908:139;;11635:419;;;:::o;12060:220::-;12200:34;12196:1;12188:6;12184:14;12177:58;12269:3;12264:2;12256:6;12252:15;12245:28;12060:220;:::o;12286:366::-;12428:3;12449:67;12513:2;12508:3;12449:67;:::i;:::-;12442:74;;12525:93;12614:3;12525:93;:::i;:::-;12643:2;12638:3;12634:12;12627:19;;12286:366;;;:::o;12658:419::-;12824:4;12862:2;12851:9;12847:18;12839:26;;12911:9;12905:4;12901:20;12897:1;12886:9;12882:17;12875:47;12939:131;13065:4;12939:131;:::i;:::-;12931:139;;12658:419;;;:::o;13083:243::-;13223:34;13219:1;13211:6;13207:14;13200:58;13292:26;13287:2;13279:6;13275:15;13268:51;13083:243;:::o;13332:366::-;13474:3;13495:67;13559:2;13554:3;13495:67;:::i;:::-;13488:74;;13571:93;13660:3;13571:93;:::i;:::-;13689:2;13684:3;13680:12;13673:19;;13332:366;;;:::o;13704:419::-;13870:4;13908:2;13897:9;13893:18;13885:26;;13957:9;13951:4;13947:20;13943:1;13932:9;13928:17;13921:47;13985:131;14111:4;13985:131;:::i;:::-;13977:139;;13704:419;;;:::o;14129:236::-;14269:34;14265:1;14257:6;14253:14;14246:58;14338:19;14333:2;14325:6;14321:15;14314:44;14129:236;:::o;14371:366::-;14513:3;14534:67;14598:2;14593:3;14534:67;:::i;:::-;14527:74;;14610:93;14699:3;14610:93;:::i;:::-;14728:2;14723:3;14719:12;14712:19;;14371:366;;;:::o;14743:419::-;14909:4;14947:2;14936:9;14932:18;14924:26;;14996:9;14990:4;14986:20;14982:1;14971:9;14967:17;14960:47;15024:131;15150:4;15024:131;:::i;:::-;15016:139;;14743:419;;;:::o;15168:228::-;15308:34;15304:1;15296:6;15292:14;15285:58;15377:11;15372:2;15364:6;15360:15;15353:36;15168:228;:::o;15402:366::-;15544:3;15565:67;15629:2;15624:3;15565:67;:::i;:::-;15558:74;;15641:93;15730:3;15641:93;:::i;:::-;15759:2;15754:3;15750:12;15743:19;;15402:366;;;:::o;15774:419::-;15940:4;15978:2;15967:9;15963:18;15955:26;;16027:9;16021:4;16017:20;16013:1;16002:9;15998:17;15991:47;16055:131;16181:4;16055:131;:::i;:::-;16047:139;;15774:419;;;:::o;16199:229::-;16339:34;16335:1;16327:6;16323:14;16316:58;16408:12;16403:2;16395:6;16391:15;16384:37;16199:229;:::o;16434:366::-;16576:3;16597:67;16661:2;16656:3;16597:67;:::i;:::-;16590:74;;16673:93;16762:3;16673:93;:::i;:::-;16791:2;16786:3;16782:12;16775:19;;16434:366;;;:::o;16806:419::-;16972:4;17010:2;16999:9;16995:18;16987:26;;17059:9;17053:4;17049:20;17045:1;17034:9;17030:17;17023:47;17087:131;17213:4;17087:131;:::i;:::-;17079:139;;16806:419;;;:::o;17231:234::-;17371:34;17367:1;17359:6;17355:14;17348:58;17440:17;17435:2;17427:6;17423:15;17416:42;17231:234;:::o;17471:366::-;17613:3;17634:67;17698:2;17693:3;17634:67;:::i;:::-;17627:74;;17710:93;17799:3;17710:93;:::i;:::-;17828:2;17823:3;17819:12;17812:19;;17471:366;;;:::o;17843:419::-;18009:4;18047:2;18036:9;18032:18;18024:26;;18096:9;18090:4;18086:20;18082:1;18071:9;18067:17;18060:47;18124:131;18250:4;18124:131;:::i;:::-;18116:139;;17843:419;;;:::o;18268:148::-;18370:11;18407:3;18392:18;;18268:148;;;;:::o;18422:377::-;18528:3;18556:39;18589:5;18556:39;:::i;:::-;18611:89;18693:6;18688:3;18611:89;:::i;:::-;18604:96;;18709:52;18754:6;18749:3;18742:4;18735:5;18731:16;18709:52;:::i;:::-;18786:6;18781:3;18777:16;18770:23;;18532:267;18422:377;;;;:::o;18805:435::-;18985:3;19007:95;19098:3;19089:6;19007:95;:::i;:::-;19000:102;;19119:95;19210:3;19201:6;19119:95;:::i;:::-;19112:102;;19231:3;19224:10;;18805:435;;;;;:::o;19246:231::-;19386:34;19382:1;19374:6;19370:14;19363:58;19455:14;19450:2;19442:6;19438:15;19431:39;19246:231;:::o;19483:366::-;19625:3;19646:67;19710:2;19705:3;19646:67;:::i;:::-;19639:74;;19722:93;19811:3;19722:93;:::i;:::-;19840:2;19835:3;19831:12;19824:19;;19483:366;;;:::o;19855:419::-;20021:4;20059:2;20048:9;20044:18;20036:26;;20108:9;20102:4;20098:20;20094:1;20083:9;20079:17;20072:47;20136:131;20262:4;20136:131;:::i;:::-;20128:139;;19855:419;;;:::o;20280:224::-;20420:34;20416:1;20408:6;20404:14;20397:58;20489:7;20484:2;20476:6;20472:15;20465:32;20280:224;:::o;20510:366::-;20652:3;20673:67;20737:2;20732:3;20673:67;:::i;:::-;20666:74;;20749:93;20838:3;20749:93;:::i;:::-;20867:2;20862:3;20858:12;20851:19;;20510:366;;;:::o;20882:419::-;21048:4;21086:2;21075:9;21071:18;21063:26;;21135:9;21129:4;21125:20;21121:1;21110:9;21106:17;21099:47;21163:131;21289:4;21163:131;:::i;:::-;21155:139;;20882:419;;;:::o;21307:223::-;21447:34;21443:1;21435:6;21431:14;21424:58;21516:6;21511:2;21503:6;21499:15;21492:31;21307:223;:::o;21536:366::-;21678:3;21699:67;21763:2;21758:3;21699:67;:::i;:::-;21692:74;;21775:93;21864:3;21775:93;:::i;:::-;21893:2;21888:3;21884:12;21877:19;;21536:366;;;:::o;21908:419::-;22074:4;22112:2;22101:9;22097:18;22089:26;;22161:9;22155:4;22151:20;22147:1;22136:9;22132:17;22125:47;22189:131;22315:4;22189:131;:::i;:::-;22181:139;;21908:419;;;:::o;22333:180::-;22381:77;22378:1;22371:88;22478:4;22475:1;22468:15;22502:4;22499:1;22492:15;22519:191;22559:4;22579:20;22597:1;22579:20;:::i;:::-;22574:25;;22613:20;22631:1;22613:20;:::i;:::-;22608:25;;22652:1;22649;22646:8;22643:34;;;22657:18;;:::i;:::-;22643:34;22702:1;22699;22695:9;22687:17;;22519:191;;;;:::o;22716:305::-;22756:3;22775:20;22793:1;22775:20;:::i;:::-;22770:25;;22809:20;22827:1;22809:20;:::i;:::-;22804:25;;22963:1;22895:66;22891:74;22888:1;22885:81;22882:107;;;22969:18;;:::i;:::-;22882:107;23013:1;23010;23006:9;22999:16;;22716:305;;;;:::o;23027:175::-;23167:27;23163:1;23155:6;23151:14;23144:51;23027:175;:::o;23208:366::-;23350:3;23371:67;23435:2;23430:3;23371:67;:::i;:::-;23364:74;;23447:93;23536:3;23447:93;:::i;:::-;23565:2;23560:3;23556:12;23549:19;;23208:366;;;:::o;23580:419::-;23746:4;23784:2;23773:9;23769:18;23761:26;;23833:9;23827:4;23823:20;23819:1;23808:9;23804:17;23797:47;23861:131;23987:4;23861:131;:::i;:::-;23853:139;;23580:419;;;:::o;24005:237::-;24145:34;24141:1;24133:6;24129:14;24122:58;24214:20;24209:2;24201:6;24197:15;24190:45;24005:237;:::o;24248:366::-;24390:3;24411:67;24475:2;24470:3;24411:67;:::i;:::-;24404:74;;24487:93;24576:3;24487:93;:::i;:::-;24605:2;24600:3;24596:12;24589:19;;24248:366;;;:::o;24620:419::-;24786:4;24824:2;24813:9;24809:18;24801:26;;24873:9;24867:4;24863:20;24859:1;24848:9;24844:17;24837:47;24901:131;25027:4;24901:131;:::i;:::-;24893:139;;24620:419;;;:::o;25045:233::-;25084:3;25107:24;25125:5;25107:24;:::i;:::-;25098:33;;25153:66;25146:5;25143:77;25140:103;;25223:18;;:::i;:::-;25140:103;25270:1;25263:5;25259:13;25252:20;;25045:233;;;:::o;25284:180::-;25332:77;25329:1;25322:88;25429:4;25426:1;25419:15;25453:4;25450:1;25443:15;25470:185;25510:1;25527:20;25545:1;25527:20;:::i;:::-;25522:25;;25561:20;25579:1;25561:20;:::i;:::-;25556:25;;25600:1;25590:35;;25605:18;;:::i;:::-;25590:35;25647:1;25644;25640:9;25635:14;;25470:185;;;;:::o;25661:176::-;25693:1;25710:20;25728:1;25710:20;:::i;:::-;25705:25;;25744:20;25762:1;25744:20;:::i;:::-;25739:25;;25783:1;25773:35;;25788:18;;:::i;:::-;25773:35;25829:1;25826;25822:9;25817:14;;25661:176;;;;:::o;25843:180::-;25891:77;25888:1;25881:88;25988:4;25985:1;25978:15;26012:4;26009:1;26002:15;26029:98;26080:6;26114:5;26108:12;26098:22;;26029:98;;;:::o;26133:168::-;26216:11;26250:6;26245:3;26238:19;26290:4;26285:3;26281:14;26266:29;;26133:168;;;;:::o;26307:360::-;26393:3;26421:38;26453:5;26421:38;:::i;:::-;26475:70;26538:6;26533:3;26475:70;:::i;:::-;26468:77;;26554:52;26599:6;26594:3;26587:4;26580:5;26576:16;26554:52;:::i;:::-;26631:29;26653:6;26631:29;:::i;:::-;26626:3;26622:39;26615:46;;26397:270;26307:360;;;;:::o;26673:640::-;26868:4;26906:3;26895:9;26891:19;26883:27;;26920:71;26988:1;26977:9;26973:17;26964:6;26920:71;:::i;:::-;27001:72;27069:2;27058:9;27054:18;27045:6;27001:72;:::i;:::-;27083;27151:2;27140:9;27136:18;27127:6;27083:72;:::i;:::-;27202:9;27196:4;27192:20;27187:2;27176:9;27172:18;27165:48;27230:76;27301:4;27292:6;27230:76;:::i;:::-;27222:84;;26673:640;;;;;;;:::o;27319:141::-;27375:5;27406:6;27400:13;27391:22;;27422:32;27448:5;27422:32;:::i;:::-;27319:141;;;;:::o;27466:349::-;27535:6;27584:2;27572:9;27563:7;27559:23;27555:32;27552:119;;;27590:79;;:::i;:::-;27552:119;27710:1;27735:63;27790:7;27781:6;27770:9;27766:22;27735:63;:::i;:::-;27725:73;;27681:127;27466:349;;;;:::o", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/ERC721.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./IERC721.sol\";\nimport \"./IERC721Receiver.sol\";\nimport \"./extensions/IERC721Metadata.sol\";\nimport \"../../utils/Address.sol\";\nimport \"../../utils/Context.sol\";\nimport \"../../utils/Strings.sol\";\nimport \"../../utils/introspection/ERC165.sol\";\n\n/**\n * @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including\n * the Metadata extension, but not including the Enumerable extension, which is available separately as\n * {ERC721Enumerable}.\n */\ncontract ERC721 is Context, ERC165, IERC721, IERC721Metadata {\n using Address for address;\n using Strings for uint256;\n\n // Token name\n string private _name;\n\n // Token symbol\n string private _symbol;\n\n // Mapping from token ID to owner address\n mapping(uint256 => address) private _owners;\n\n // Mapping owner address to token count\n mapping(address => uint256) private _balances;\n\n // Mapping from token ID to approved address\n mapping(uint256 => address) private _tokenApprovals;\n\n // Mapping from owner to operator approvals\n mapping(address => mapping(address => bool)) private _operatorApprovals;\n\n /**\n * @dev Initializes the contract by setting a `name` and a `symbol` to the token collection.\n */\n constructor(string memory name_, string memory symbol_) {\n _name = name_;\n _symbol = symbol_;\n }\n\n /**\n * @dev See {IERC165-supportsInterface}.\n */\n function supportsInterface(bytes4 interfaceId) public view virtual override(ERC165, IERC165) returns (bool) {\n return\n interfaceId == type(IERC721).interfaceId ||\n interfaceId == type(IERC721Metadata).interfaceId ||\n super.supportsInterface(interfaceId);\n }\n\n /**\n * @dev See {IERC721-balanceOf}.\n */\n function balanceOf(address owner) public view virtual override returns (uint256) {\n require(owner != address(0), \"ERC721: balance query for the zero address\");\n return _balances[owner];\n }\n\n /**\n * @dev See {IERC721-ownerOf}.\n */\n function ownerOf(uint256 tokenId) public view virtual override returns (address) {\n address owner = _owners[tokenId];\n require(owner != address(0), \"ERC721: owner query for nonexistent token\");\n return owner;\n }\n\n /**\n * @dev See {IERC721Metadata-name}.\n */\n function name() public view virtual override returns (string memory) {\n return _name;\n }\n\n /**\n * @dev See {IERC721Metadata-symbol}.\n */\n function symbol() public view virtual override returns (string memory) {\n return _symbol;\n }\n\n /**\n * @dev See {IERC721Metadata-tokenURI}.\n */\n function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {\n require(_exists(tokenId), \"ERC721Metadata: URI query for nonexistent token\");\n\n string memory baseURI = _baseURI();\n return bytes(baseURI).length > 0 ? string(abi.encodePacked(baseURI, tokenId.toString())) : \"\";\n }\n\n /**\n * @dev Base URI for computing {tokenURI}. If set, the resulting URI for each\n * token will be the concatenation of the `baseURI` and the `tokenId`. Empty\n * by default, can be overridden in child contracts.\n */\n function _baseURI() internal view virtual returns (string memory) {\n return \"\";\n }\n\n /**\n * @dev See {IERC721-approve}.\n */\n function approve(address to, uint256 tokenId) public virtual override {\n address owner = ERC721.ownerOf(tokenId);\n require(to != owner, \"ERC721: approval to current owner\");\n\n require(\n _msgSender() == owner || isApprovedForAll(owner, _msgSender()),\n \"ERC721: approve caller is not owner nor approved for all\"\n );\n\n _approve(to, tokenId);\n }\n\n /**\n * @dev See {IERC721-getApproved}.\n */\n function getApproved(uint256 tokenId) public view virtual override returns (address) {\n require(_exists(tokenId), \"ERC721: approved query for nonexistent token\");\n\n return _tokenApprovals[tokenId];\n }\n\n /**\n * @dev See {IERC721-setApprovalForAll}.\n */\n function setApprovalForAll(address operator, bool approved) public virtual override {\n _setApprovalForAll(_msgSender(), operator, approved);\n }\n\n /**\n * @dev See {IERC721-isApprovedForAll}.\n */\n function isApprovedForAll(address owner, address operator) public view virtual override returns (bool) {\n return _operatorApprovals[owner][operator];\n }\n\n /**\n * @dev See {IERC721-transferFrom}.\n */\n function transferFrom(\n address from,\n address to,\n uint256 tokenId\n ) public virtual override {\n //solhint-disable-next-line max-line-length\n require(_isApprovedOrOwner(_msgSender(), tokenId), \"ERC721: transfer caller is not owner nor approved\");\n\n _transfer(from, to, tokenId);\n }\n\n /**\n * @dev See {IERC721-safeTransferFrom}.\n */\n function safeTransferFrom(\n address from,\n address to,\n uint256 tokenId\n ) public virtual override {\n safeTransferFrom(from, to, tokenId, \"\");\n }\n\n /**\n * @dev See {IERC721-safeTransferFrom}.\n */\n function safeTransferFrom(\n address from,\n address to,\n uint256 tokenId,\n bytes memory _data\n ) public virtual override {\n require(_isApprovedOrOwner(_msgSender(), tokenId), \"ERC721: transfer caller is not owner nor approved\");\n _safeTransfer(from, to, tokenId, _data);\n }\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n * are aware of the ERC721 protocol to prevent tokens from being forever locked.\n *\n * `_data` is additional data, it has no specified format and it is sent in call to `to`.\n *\n * This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.\n * implement alternative mechanisms to perform token transfer, such as signature-based.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function _safeTransfer(\n address from,\n address to,\n uint256 tokenId,\n bytes memory _data\n ) internal virtual {\n _transfer(from, to, tokenId);\n require(_checkOnERC721Received(from, to, tokenId, _data), \"ERC721: transfer to non ERC721Receiver implementer\");\n }\n\n /**\n * @dev Returns whether `tokenId` exists.\n *\n * Tokens can be managed by their owner or approved accounts via {approve} or {setApprovalForAll}.\n *\n * Tokens start existing when they are minted (`_mint`),\n * and stop existing when they are burned (`_burn`).\n */\n function _exists(uint256 tokenId) internal view virtual returns (bool) {\n return _owners[tokenId] != address(0);\n }\n\n /**\n * @dev Returns whether `spender` is allowed to manage `tokenId`.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function _isApprovedOrOwner(address spender, uint256 tokenId) internal view virtual returns (bool) {\n require(_exists(tokenId), \"ERC721: operator query for nonexistent token\");\n address owner = ERC721.ownerOf(tokenId);\n return (spender == owner || isApprovedForAll(owner, spender) || getApproved(tokenId) == spender);\n }\n\n /**\n * @dev Safely mints `tokenId` and transfers it to `to`.\n *\n * Requirements:\n *\n * - `tokenId` must not exist.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function _safeMint(address to, uint256 tokenId) internal virtual {\n _safeMint(to, tokenId, \"\");\n }\n\n /**\n * @dev Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is\n * forwarded in {IERC721Receiver-onERC721Received} to contract recipients.\n */\n function _safeMint(\n address to,\n uint256 tokenId,\n bytes memory _data\n ) internal virtual {\n _mint(to, tokenId);\n require(\n _checkOnERC721Received(address(0), to, tokenId, _data),\n \"ERC721: transfer to non ERC721Receiver implementer\"\n );\n }\n\n /**\n * @dev Mints `tokenId` and transfers it to `to`.\n *\n * WARNING: Usage of this method is discouraged, use {_safeMint} whenever possible\n *\n * Requirements:\n *\n * - `tokenId` must not exist.\n * - `to` cannot be the zero address.\n *\n * Emits a {Transfer} event.\n */\n function _mint(address to, uint256 tokenId) internal virtual {\n require(to != address(0), \"ERC721: mint to the zero address\");\n require(!_exists(tokenId), \"ERC721: token already minted\");\n\n _beforeTokenTransfer(address(0), to, tokenId);\n\n _balances[to] += 1;\n _owners[tokenId] = to;\n\n emit Transfer(address(0), to, tokenId);\n\n _afterTokenTransfer(address(0), to, tokenId);\n }\n\n /**\n * @dev Destroys `tokenId`.\n * The approval is cleared when the token is burned.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n *\n * Emits a {Transfer} event.\n */\n function _burn(uint256 tokenId) internal virtual {\n address owner = ERC721.ownerOf(tokenId);\n\n _beforeTokenTransfer(owner, address(0), tokenId);\n\n // Clear approvals\n _approve(address(0), tokenId);\n\n _balances[owner] -= 1;\n delete _owners[tokenId];\n\n emit Transfer(owner, address(0), tokenId);\n\n _afterTokenTransfer(owner, address(0), tokenId);\n }\n\n /**\n * @dev Transfers `tokenId` from `from` to `to`.\n * As opposed to {transferFrom}, this imposes no restrictions on msg.sender.\n *\n * Requirements:\n *\n * - `to` cannot be the zero address.\n * - `tokenId` token must be owned by `from`.\n *\n * Emits a {Transfer} event.\n */\n function _transfer(\n address from,\n address to,\n uint256 tokenId\n ) internal virtual {\n require(ERC721.ownerOf(tokenId) == from, \"ERC721: transfer from incorrect owner\");\n require(to != address(0), \"ERC721: transfer to the zero address\");\n\n _beforeTokenTransfer(from, to, tokenId);\n\n // Clear approvals from the previous owner\n _approve(address(0), tokenId);\n\n _balances[from] -= 1;\n _balances[to] += 1;\n _owners[tokenId] = to;\n\n emit Transfer(from, to, tokenId);\n\n _afterTokenTransfer(from, to, tokenId);\n }\n\n /**\n * @dev Approve `to` to operate on `tokenId`\n *\n * Emits a {Approval} event.\n */\n function _approve(address to, uint256 tokenId) internal virtual {\n _tokenApprovals[tokenId] = to;\n emit Approval(ERC721.ownerOf(tokenId), to, tokenId);\n }\n\n /**\n * @dev Approve `operator` to operate on all of `owner` tokens\n *\n * Emits a {ApprovalForAll} event.\n */\n function _setApprovalForAll(\n address owner,\n address operator,\n bool approved\n ) internal virtual {\n require(owner != operator, \"ERC721: approve to caller\");\n _operatorApprovals[owner][operator] = approved;\n emit ApprovalForAll(owner, operator, approved);\n }\n\n /**\n * @dev Internal function to invoke {IERC721Receiver-onERC721Received} on a target address.\n * The call is not executed if the target address is not a contract.\n *\n * @param from address representing the previous owner of the given token ID\n * @param to target address that will receive the tokens\n * @param tokenId uint256 ID of the token to be transferred\n * @param _data bytes optional data to send along with the call\n * @return bool whether the call correctly returned the expected magic value\n */\n function _checkOnERC721Received(\n address from,\n address to,\n uint256 tokenId,\n bytes memory _data\n ) private returns (bool) {\n if (to.isContract()) {\n try IERC721Receiver(to).onERC721Received(_msgSender(), from, tokenId, _data) returns (bytes4 retval) {\n return retval == IERC721Receiver.onERC721Received.selector;\n } catch (bytes memory reason) {\n if (reason.length == 0) {\n revert(\"ERC721: transfer to non ERC721Receiver implementer\");\n } else {\n assembly {\n revert(add(32, reason), mload(reason))\n }\n }\n }\n } else {\n return true;\n }\n }\n\n /**\n * @dev Hook that is called before any token transfer. This includes minting\n * and burning.\n *\n * Calling conditions:\n *\n * - When `from` and `to` are both non-zero, ``from``'s `tokenId` will be\n * transferred to `to`.\n * - When `from` is zero, `tokenId` will be minted for `to`.\n * - When `to` is zero, ``from``'s `tokenId` will be burned.\n * - `from` and `to` are never both zero.\n *\n * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].\n */\n function _beforeTokenTransfer(\n address from,\n address to,\n uint256 tokenId\n ) internal virtual {}\n\n /**\n * @dev Hook that is called after any transfer of tokens. This includes\n * minting and burning.\n *\n * Calling conditions:\n *\n * - when `from` and `to` are both non-zero.\n * - `from` and `to` are never both zero.\n *\n * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].\n */\n function _afterTokenTransfer(\n address from,\n address to,\n uint256 tokenId\n ) internal virtual {}\n}\n", - "sourcePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", - "exportedSymbols": { - "Address": [ - 1449 - ], - "Context": [ - 1471 - ], - "ERC165": [ - 1772 - ], - "ERC721": [ - 865 - ], - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ], - "IERC721Receiver": [ - 999 - ], - "Strings": [ - 1748 - ] - }, - "id": 866, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "107:23:0" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "file": "./IERC721.sol", - "id": 2, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 982, - "src": "132:23:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", - "file": "./IERC721Receiver.sol", - "id": 3, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1000, - "src": "156:31:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "file": "./extensions/IERC721Metadata.sol", - "id": 4, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1155, - "src": "188:42:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "file": "../../utils/Address.sol", - "id": 5, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1450, - "src": "231:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "file": "../../utils/Context.sol", - "id": 6, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1472, - "src": "265:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", - "file": "../../utils/Strings.sol", - "id": 7, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1749, - "src": "299:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", - "file": "../../utils/introspection/ERC165.sol", - "id": 8, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1773, - "src": "333:46:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 10, - "name": "Context", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1471, - "src": "647:7:0" - }, - "id": 11, - "nodeType": "InheritanceSpecifier", - "src": "647:7:0" - }, - { - "baseName": { - "id": 12, - "name": "ERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1772, - "src": "656:6:0" - }, - "id": 13, - "nodeType": "InheritanceSpecifier", - "src": "656:6:0" - }, - { - "baseName": { - "id": 14, - "name": "IERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 981, - "src": "664:7:0" - }, - "id": 15, - "nodeType": "InheritanceSpecifier", - "src": "664:7:0" - }, - { - "baseName": { - "id": 16, - "name": "IERC721Metadata", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1154, - "src": "673:15:0" - }, - "id": 17, - "nodeType": "InheritanceSpecifier", - "src": "673:15:0" - } - ], - "canonicalName": "ERC721", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 9, - "nodeType": "StructuredDocumentation", - "src": "381:246:0", - "text": " @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including\n the Metadata extension, but not including the Enumerable extension, which is available separately as\n {ERC721Enumerable}." - }, - "fullyImplemented": true, - "id": 865, - "linearizedBaseContracts": [ - 865, - 1154, - 981, - 1772, - 1784, - 1471 - ], - "name": "ERC721", - "nameLocation": "637:6:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 20, - "libraryName": { - "id": 18, - "name": "Address", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1449, - "src": "701:7:0" - }, - "nodeType": "UsingForDirective", - "src": "695:26:0", - "typeName": { - "id": 19, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "713:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - { - "global": false, - "id": 23, - "libraryName": { - "id": 21, - "name": "Strings", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1748, - "src": "732:7:0" - }, - "nodeType": "UsingForDirective", - "src": "726:26:0", - "typeName": { - "id": 22, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "744:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 25, - "mutability": "mutable", - "name": "_name", - "nameLocation": "791:5:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "776:20:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 24, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "776:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 27, - "mutability": "mutable", - "name": "_symbol", - "nameLocation": "838:7:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "823:22:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 26, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "823:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 31, - "mutability": "mutable", - "name": "_owners", - "nameLocation": "934:7:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "898:43:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "typeName": { - "id": 30, - "keyType": { - "id": 28, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "906:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "898:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "valueType": { - "id": 29, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "917:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 35, - "mutability": "mutable", - "name": "_balances", - "nameLocation": "1028:9:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "992:45:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 34, - "keyType": { - "id": 32, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1000:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "992:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 33, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1011:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 39, - "mutability": "mutable", - "name": "_tokenApprovals", - "nameLocation": "1129:15:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "1093:51:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "typeName": { - "id": 38, - "keyType": { - "id": 36, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1101:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "1093:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "valueType": { - "id": 37, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1112:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 45, - "mutability": "mutable", - "name": "_operatorApprovals", - "nameLocation": "1252:18:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "1199:71:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - }, - "typeName": { - "id": 44, - "keyType": { - "id": 40, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1207:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1199:44:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - }, - "valueType": { - "id": 43, - "keyType": { - "id": 41, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1226:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1218:24:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - }, - "valueType": { - "id": 42, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1237:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "visibility": "private" - }, - { - "body": { - "id": 61, - "nodeType": "Block", - "src": "1446:57:0", - "statements": [ - { - "expression": { - "id": 55, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 53, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "1456:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 54, - "name": "name_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "1464:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1456:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 56, - "nodeType": "ExpressionStatement", - "src": "1456:13:0" - }, - { - "expression": { - "id": 59, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 57, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 27, - "src": "1479:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 58, - "name": "symbol_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 50, - "src": "1489:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1479:17:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 60, - "nodeType": "ExpressionStatement", - "src": "1479:17:0" - } - ] - }, - "documentation": { - "id": 46, - "nodeType": "StructuredDocumentation", - "src": "1277:108:0", - "text": " @dev Initializes the contract by setting a `name` and a `symbol` to the token collection." - }, - "id": 62, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 51, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 48, - "mutability": "mutable", - "name": "name_", - "nameLocation": "1416:5:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "1402:19:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 47, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1402:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 50, - "mutability": "mutable", - "name": "symbol_", - "nameLocation": "1437:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "1423:21:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 49, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1423:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1401:44:0" - }, - "returnParameters": { - "id": 52, - "nodeType": "ParameterList", - "parameters": [], - "src": "1446:0:0" - }, - "scope": 865, - "src": "1390:113:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 1771, - 1783 - ], - "body": { - "id": 92, - "nodeType": "Block", - "src": "1678:192:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 90, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 85, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 78, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 73, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1707:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 75, - "name": "IERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 981, - "src": "1727:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721_$981_$", - "typeString": "type(contract IERC721)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC721_$981_$", - "typeString": "type(contract IERC721)" - } - ], - "id": 74, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "1722:4:0", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 76, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1722:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721_$981", - "typeString": "type(contract IERC721)" - } - }, - "id": 77, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "1722:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "1707:40:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 84, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 79, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1763:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 81, - "name": "IERC721Metadata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1154, - "src": "1783:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$1154_$", - "typeString": "type(contract IERC721Metadata)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$1154_$", - "typeString": "type(contract IERC721Metadata)" - } - ], - "id": 80, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "1778:4:0", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 82, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1778:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721Metadata_$1154", - "typeString": "type(contract IERC721Metadata)" - } - }, - "id": 83, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "1778:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "1763:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1707:104:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 88, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1851:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - ], - "expression": { - "id": 86, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1827:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721_$865_$", - "typeString": "type(contract super ERC721)" - } - }, - "id": 87, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "supportsInterface", - "nodeType": "MemberAccess", - "referencedDeclaration": 1771, - "src": "1827:23:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", - "typeString": "function (bytes4) view returns (bool)" - } - }, - "id": 89, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1827:36:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1707:156:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 72, - "id": 91, - "nodeType": "Return", - "src": "1688:175:0" - } - ] - }, - "documentation": { - "id": 63, - "nodeType": "StructuredDocumentation", - "src": "1509:56:0", - "text": " @dev See {IERC165-supportsInterface}." - }, - "functionSelector": "01ffc9a7", - "id": 93, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "1579:17:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 69, - "nodeType": "OverrideSpecifier", - "overrides": [ - { - "id": 67, - "name": "ERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1772, - "src": "1646:6:0" - }, - { - "id": 68, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "1654:7:0" - } - ], - "src": "1637:25:0" - }, - "parameters": { - "id": 66, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 65, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "1604:11:0", - "nodeType": "VariableDeclaration", - "scope": 93, - "src": "1597:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 64, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "1597:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "1596:20:0" - }, - "returnParameters": { - "id": 72, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 71, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 93, - "src": "1672:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 70, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1672:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1671:6:0" - }, - "scope": 865, - "src": "1570:300:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 906 - ], - "body": { - "id": 116, - "nodeType": "Block", - "src": "2010:124:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 108, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 103, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "2028:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 106, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2045:1:0", - "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": 105, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2037:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 104, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2037:7:0", - "typeDescriptions": {} - } - }, - "id": 107, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2037:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2028:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a2062616c616e636520717565727920666f7220746865207a65726f2061646472657373", - "id": 109, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2049:44:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "typeString": "literal_string \"ERC721: balance query for the zero address\"" - }, - "value": "ERC721: balance query for the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "typeString": "literal_string \"ERC721: balance query for the zero address\"" - } - ], - "id": 102, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2020:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 110, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2020:74:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 111, - "nodeType": "ExpressionStatement", - "src": "2020:74:0" - }, - { - "expression": { - "baseExpression": { - "id": 112, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "2111:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 114, - "indexExpression": { - "id": 113, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "2121:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2111:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 101, - "id": 115, - "nodeType": "Return", - "src": "2104:23:0" - } - ] - }, - "documentation": { - "id": 94, - "nodeType": "StructuredDocumentation", - "src": "1876:48:0", - "text": " @dev See {IERC721-balanceOf}." - }, - "functionSelector": "70a08231", - "id": 117, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "1938:9:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 98, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1983:8:0" - }, - "parameters": { - "id": 97, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 96, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1956:5:0", - "nodeType": "VariableDeclaration", - "scope": 117, - "src": "1948:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 95, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1948:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1947:15:0" - }, - "returnParameters": { - "id": 101, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 100, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 117, - "src": "2001:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 99, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2001:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2000:9:0" - }, - "scope": 865, - "src": "1929:205:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 914 - ], - "body": { - "id": 144, - "nodeType": "Block", - "src": "2272:154:0", - "statements": [ - { - "assignments": [ - 127 - ], - "declarations": [ - { - "constant": false, - "id": 127, - "mutability": "mutable", - "name": "owner", - "nameLocation": "2290:5:0", - "nodeType": "VariableDeclaration", - "scope": 144, - "src": "2282:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2282:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 131, - "initialValue": { - "baseExpression": { - "id": 128, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "2298:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 130, - "indexExpression": { - "id": 129, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 120, - "src": "2306:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2298:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2282:32:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 133, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2332:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2349:1:0", - "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": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2341:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 134, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2341:7:0", - "typeDescriptions": {} - } - }, - "id": 137, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2341:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2332:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2353:43:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "typeString": "literal_string \"ERC721: owner query for nonexistent token\"" - }, - "value": "ERC721: owner query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "typeString": "literal_string \"ERC721: owner query for nonexistent token\"" - } - ], - "id": 132, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2324:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2324:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 141, - "nodeType": "ExpressionStatement", - "src": "2324:73:0" - }, - { - "expression": { - "id": 142, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2414:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 125, - "id": 143, - "nodeType": "Return", - "src": "2407:12:0" - } - ] - }, - "documentation": { - "id": 118, - "nodeType": "StructuredDocumentation", - "src": "2140:46:0", - "text": " @dev See {IERC721-ownerOf}." - }, - "functionSelector": "6352211e", - "id": 145, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "ownerOf", - "nameLocation": "2200:7:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 122, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2245:8:0" - }, - "parameters": { - "id": 121, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 120, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2216:7:0", - "nodeType": "VariableDeclaration", - "scope": 145, - "src": "2208:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 119, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2208:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2207:17:0" - }, - "returnParameters": { - "id": 125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 124, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 145, - "src": "2263:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 123, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2263:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2262:9:0" - }, - "scope": 865, - "src": "2191:235:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1139 - ], - "body": { - "id": 154, - "nodeType": "Block", - "src": "2557:29:0", - "statements": [ - { - "expression": { - "id": 152, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "2574:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 151, - "id": 153, - "nodeType": "Return", - "src": "2567:12:0" - } - ] - }, - "documentation": { - "id": 146, - "nodeType": "StructuredDocumentation", - "src": "2432:51:0", - "text": " @dev See {IERC721Metadata-name}." - }, - "functionSelector": "06fdde03", - "id": 155, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "2497:4:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 148, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2524:8:0" - }, - "parameters": { - "id": 147, - "nodeType": "ParameterList", - "parameters": [], - "src": "2501:2:0" - }, - "returnParameters": { - "id": 151, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 150, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 155, - "src": "2542:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 149, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2542:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2541:15:0" - }, - "scope": 865, - "src": "2488:98:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1145 - ], - "body": { - "id": 164, - "nodeType": "Block", - "src": "2721:31:0", - "statements": [ - { - "expression": { - "id": 162, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 27, - "src": "2738:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 161, - "id": 163, - "nodeType": "Return", - "src": "2731:14:0" - } - ] - }, - "documentation": { - "id": 156, - "nodeType": "StructuredDocumentation", - "src": "2592:53:0", - "text": " @dev See {IERC721Metadata-symbol}." - }, - "functionSelector": "95d89b41", - "id": 165, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "2659:6:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 158, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2688:8:0" - }, - "parameters": { - "id": 157, - "nodeType": "ParameterList", - "parameters": [], - "src": "2665:2:0" - }, - "returnParameters": { - "id": 161, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 160, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2706:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 159, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2706:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2705:15:0" - }, - "scope": 865, - "src": "2650:102:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1153 - ], - "body": { - "id": 206, - "nodeType": "Block", - "src": "2906:241:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 176, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 168, - "src": "2932:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 175, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "2924:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2924:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 178, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2942:49:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "typeString": "literal_string \"ERC721Metadata: URI query for nonexistent token\"" - }, - "value": "ERC721Metadata: URI query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "typeString": "literal_string \"ERC721Metadata: URI query for nonexistent token\"" - } - ], - "id": 174, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2916:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2916:76:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 180, - "nodeType": "ExpressionStatement", - "src": "2916:76:0" - }, - { - "assignments": [ - 182 - ], - "declarations": [ - { - "constant": false, - "id": 182, - "mutability": "mutable", - "name": "baseURI", - "nameLocation": "3017:7:0", - "nodeType": "VariableDeclaration", - "scope": 206, - "src": "3003:21:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 181, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3003:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 185, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 183, - "name": "_baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3027:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", - "typeString": "function () view returns (string memory)" - } - }, - "id": 184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3027:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3003:34:0" - }, - { - "expression": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 188, - "name": "baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 182, - "src": "3060:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 187, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3054:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 186, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3054:5:0", - "typeDescriptions": {} - } - }, - "id": 189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3054:14:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3054:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3078:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3054:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "hexValue": "", - "id": 203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3138:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "id": 204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "3054:86:0", - "trueExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 197, - "name": "baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 182, - "src": "3106:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 198, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 168, - "src": "3115:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 199, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toString", - "nodeType": "MemberAccess", - "referencedDeclaration": 1630, - "src": "3115:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$bound_to$_t_uint256_$", - "typeString": "function (uint256) pure returns (string memory)" - } - }, - "id": 200, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3115:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 195, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "3089:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 196, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "3089:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3089:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 194, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3082:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 193, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3082:6:0", - "typeDescriptions": {} - } - }, - "id": 202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3082:53:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 173, - "id": 205, - "nodeType": "Return", - "src": "3047:93:0" - } - ] - }, - "documentation": { - "id": 166, - "nodeType": "StructuredDocumentation", - "src": "2758:55:0", - "text": " @dev See {IERC721Metadata-tokenURI}." - }, - "functionSelector": "c87b56dd", - "id": 207, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "2827:8:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 170, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2873:8:0" - }, - "parameters": { - "id": 169, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 168, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2844:7:0", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "2836:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 167, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2836:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2835:17:0" - }, - "returnParameters": { - "id": 173, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 172, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "2891:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 171, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2891:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2890:15:0" - }, - "scope": 865, - "src": "2818:329:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 215, - "nodeType": "Block", - "src": "3455:26:0", - "statements": [ - { - "expression": { - "hexValue": "", - "id": 213, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3472:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 212, - "id": 214, - "nodeType": "Return", - "src": "3465:9:0" - } - ] - }, - "documentation": { - "id": 208, - "nodeType": "StructuredDocumentation", - "src": "3153:231:0", - "text": " @dev Base URI for computing {tokenURI}. If set, the resulting URI for each\n token will be the concatenation of the `baseURI` and the `tokenId`. Empty\n by default, can be overridden in child contracts." - }, - "id": 216, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_baseURI", - "nameLocation": "3398:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 209, - "nodeType": "ParameterList", - "parameters": [], - "src": "3406:2:0" - }, - "returnParameters": { - "id": 212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 211, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 216, - "src": "3440:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 210, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3440:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3439:15:0" - }, - "scope": 865, - "src": "3389:92:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "baseFunctions": [ - 954 - ], - "body": { - "id": 258, - "nodeType": "Block", - "src": "3608:331:0", - "statements": [ - { - "assignments": [ - 226 - ], - "declarations": [ - { - "constant": false, - "id": 226, - "mutability": "mutable", - "name": "owner", - "nameLocation": "3626:5:0", - "nodeType": "VariableDeclaration", - "scope": 258, - "src": "3618:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3618:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 231, - "initialValue": { - "arguments": [ - { - "id": 229, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3649:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 227, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "3634:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "3634:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3634:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3618:39:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 235, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 233, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 219, - "src": "3675:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 234, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3681:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3675:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e6572", - "id": 236, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3688:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "typeString": "literal_string \"ERC721: approval to current owner\"" - }, - "value": "ERC721: approval to current owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "typeString": "literal_string \"ERC721: approval to current owner\"" - } - ], - "id": 232, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3667:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3667:57:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 238, - "nodeType": "ExpressionStatement", - "src": "3667:57:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 249, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 243, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 240, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "3756:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 241, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3756:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 242, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3772:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3756:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 245, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3798:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 246, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "3805:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 247, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3805:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 244, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 315, - "src": "3781:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 248, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3781:37:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3756:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c", - "id": 250, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3832:58:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "typeString": "literal_string \"ERC721: approve caller is not owner nor approved for all\"" - }, - "value": "ERC721: approve caller is not owner nor approved for all" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "typeString": "literal_string \"ERC721: approve caller is not owner nor approved for all\"" - } - ], - "id": 239, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3735:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3735:165:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 252, - "nodeType": "ExpressionStatement", - "src": "3735:165:0" - }, - { - "expression": { - "arguments": [ - { - "id": 254, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 219, - "src": "3920:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 255, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3924:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 253, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "3911:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3911:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 257, - "nodeType": "ExpressionStatement", - "src": "3911:21:0" - } - ] - }, - "documentation": { - "id": 217, - "nodeType": "StructuredDocumentation", - "src": "3487:46:0", - "text": " @dev See {IERC721-approve}." - }, - "functionSelector": "095ea7b3", - "id": 259, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "3547:7:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 223, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3599:8:0" - }, - "parameters": { - "id": 222, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 219, - "mutability": "mutable", - "name": "to", - "nameLocation": "3563:2:0", - "nodeType": "VariableDeclaration", - "scope": 259, - "src": "3555:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 218, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3555:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 221, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3575:7:0", - "nodeType": "VariableDeclaration", - "scope": 259, - "src": "3567:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 220, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3567:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3554:29:0" - }, - "returnParameters": { - "id": 224, - "nodeType": "ParameterList", - "parameters": [], - "src": "3608:0:0" - }, - "scope": 865, - "src": "3538:401:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 970 - ], - "body": { - "id": 279, - "nodeType": "Block", - "src": "4085:132:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 270, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "4111:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 269, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "4103:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4103:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 272, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4121:46:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "typeString": "literal_string \"ERC721: approved query for nonexistent token\"" - }, - "value": "ERC721: approved query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "typeString": "literal_string \"ERC721: approved query for nonexistent token\"" - } - ], - "id": 268, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4095:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 273, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4095:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 274, - "nodeType": "ExpressionStatement", - "src": "4095:73:0" - }, - { - "expression": { - "baseExpression": { - "id": 275, - "name": "_tokenApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 39, - "src": "4186:15:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 277, - "indexExpression": { - "id": 276, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "4202:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4186:24:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 267, - "id": 278, - "nodeType": "Return", - "src": "4179:31:0" - } - ] - }, - "documentation": { - "id": 260, - "nodeType": "StructuredDocumentation", - "src": "3945:50:0", - "text": " @dev See {IERC721-getApproved}." - }, - "functionSelector": "081812fc", - "id": 280, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getApproved", - "nameLocation": "4009:11:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 264, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4058:8:0" - }, - "parameters": { - "id": 263, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 262, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4029:7:0", - "nodeType": "VariableDeclaration", - "scope": 280, - "src": "4021:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 261, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4021:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4020:17:0" - }, - "returnParameters": { - "id": 267, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 266, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 280, - "src": "4076:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 265, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4076:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4075:9:0" - }, - "scope": 865, - "src": "4000:217:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 962 - ], - "body": { - "id": 296, - "nodeType": "Block", - "src": "4368:69:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 290, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "4397:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4397:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 292, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "4411:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 293, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 285, - "src": "4421:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 289, - "name": "_setApprovalForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 780, - "src": "4378:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", - "typeString": "function (address,address,bool)" - } - }, - "id": 294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4378:52:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 295, - "nodeType": "ExpressionStatement", - "src": "4378:52:0" - } - ] - }, - "documentation": { - "id": 281, - "nodeType": "StructuredDocumentation", - "src": "4223:56:0", - "text": " @dev See {IERC721-setApprovalForAll}." - }, - "functionSelector": "a22cb465", - "id": 297, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setApprovalForAll", - "nameLocation": "4293:17:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 287, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4359:8:0" - }, - "parameters": { - "id": 286, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 283, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4319:8:0", - "nodeType": "VariableDeclaration", - "scope": 297, - "src": "4311:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 282, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4311:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 285, - "mutability": "mutable", - "name": "approved", - "nameLocation": "4334:8:0", - "nodeType": "VariableDeclaration", - "scope": 297, - "src": "4329:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 284, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4329:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4310:33:0" - }, - "returnParameters": { - "id": 288, - "nodeType": "ParameterList", - "parameters": [], - "src": "4368:0:0" - }, - "scope": 865, - "src": "4284:153:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 980 - ], - "body": { - "id": 314, - "nodeType": "Block", - "src": "4606:59:0", - "statements": [ - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 308, - "name": "_operatorApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45, - "src": "4623:18:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 310, - "indexExpression": { - "id": 309, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 300, - "src": "4642:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 312, - "indexExpression": { - "id": 311, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "4649:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:35:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 307, - "id": 313, - "nodeType": "Return", - "src": "4616:42:0" - } - ] - }, - "documentation": { - "id": 298, - "nodeType": "StructuredDocumentation", - "src": "4443:55:0", - "text": " @dev See {IERC721-isApprovedForAll}." - }, - "functionSelector": "e985e9c5", - "id": 315, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isApprovedForAll", - "nameLocation": "4512:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 304, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4582:8:0" - }, - "parameters": { - "id": 303, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 300, - "mutability": "mutable", - "name": "owner", - "nameLocation": "4537:5:0", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4529:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 299, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4529:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 302, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4552:8:0", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4544:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 301, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4544:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4528:33:0" - }, - "returnParameters": { - "id": 307, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 306, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4600:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 305, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4600:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4599:6:0" - }, - "scope": 865, - "src": "4503:162:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 946 - ], - "body": { - "id": 341, - "nodeType": "Block", - "src": "4846:211:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 328, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "4935:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4935:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 330, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 322, - "src": "4949:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 327, - "name": "_isApprovedOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 479, - "src": "4916:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) view returns (bool)" - } - }, - "id": 331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4916:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", - "id": 332, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4959:51:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - }, - "value": "ERC721: transfer caller is not owner nor approved" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - } - ], - "id": 326, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4908:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4908:103:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 334, - "nodeType": "ExpressionStatement", - "src": "4908:103:0" - }, - { - "expression": { - "arguments": [ - { - "id": 336, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 318, - "src": "5032:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 337, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "5038:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 338, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 322, - "src": "5042:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 335, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 724, - "src": "5022:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5022:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 340, - "nodeType": "ExpressionStatement", - "src": "5022:28:0" - } - ] - }, - "documentation": { - "id": 316, - "nodeType": "StructuredDocumentation", - "src": "4671:51:0", - "text": " @dev See {IERC721-transferFrom}." - }, - "functionSelector": "23b872dd", - "id": 342, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "4736:12:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 324, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4837:8:0" - }, - "parameters": { - "id": 323, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 318, - "mutability": "mutable", - "name": "from", - "nameLocation": "4766:4:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4758:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 317, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4758:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 320, - "mutability": "mutable", - "name": "to", - "nameLocation": "4788:2:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4780:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 319, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4780:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 322, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4808:7:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4800:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 321, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4800:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4748:73:0" - }, - "returnParameters": { - "id": 325, - "nodeType": "ParameterList", - "parameters": [], - "src": "4846:0:0" - }, - "scope": 865, - "src": "4727:330:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 936 - ], - "body": { - "id": 360, - "nodeType": "Block", - "src": "5246:56:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 354, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 345, - "src": "5273:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 355, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 347, - "src": "5279:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 356, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5283:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "", - "id": 357, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5292:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 353, - "name": "safeTransferFrom", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 361, - 391 - ], - "referencedDeclaration": 391, - "src": "5256:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,bytes memory)" - } - }, - "id": 358, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5256:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 359, - "nodeType": "ExpressionStatement", - "src": "5256:39:0" - } - ] - }, - "documentation": { - "id": 343, - "nodeType": "StructuredDocumentation", - "src": "5063:55:0", - "text": " @dev See {IERC721-safeTransferFrom}." - }, - "functionSelector": "42842e0e", - "id": 361, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "5132:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 351, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5237:8:0" - }, - "parameters": { - "id": 350, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 345, - "mutability": "mutable", - "name": "from", - "nameLocation": "5166:4:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5158:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 344, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5158:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 347, - "mutability": "mutable", - "name": "to", - "nameLocation": "5188:2:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5180:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 346, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5180:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 349, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "5208:7:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5200:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 348, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5200:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5148:73:0" - }, - "returnParameters": { - "id": 352, - "nodeType": "ParameterList", - "parameters": [], - "src": "5246:0:0" - }, - "scope": 865, - "src": "5123:179:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 926 - ], - "body": { - "id": 390, - "nodeType": "Block", - "src": "5519:169:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 376, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "5556:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5556:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 378, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 368, - "src": "5570:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 375, - "name": "_isApprovedOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 479, - "src": "5537:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) view returns (bool)" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5537:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", - "id": 380, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5580:51:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - }, - "value": "ERC721: transfer caller is not owner nor approved" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - } - ], - "id": 374, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5529:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5529:103:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 382, - "nodeType": "ExpressionStatement", - "src": "5529:103:0" - }, - { - "expression": { - "arguments": [ - { - "id": 384, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5656:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 385, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "5662:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 386, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 368, - "src": "5666:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 387, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "5675:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 383, - "name": "_safeTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 420, - "src": "5642:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,bytes memory)" - } - }, - "id": 388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5642:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 389, - "nodeType": "ExpressionStatement", - "src": "5642:39:0" - } - ] - }, - "documentation": { - "id": 362, - "nodeType": "StructuredDocumentation", - "src": "5308:55:0", - "text": " @dev See {IERC721-safeTransferFrom}." - }, - "functionSelector": "b88d4fde", - "id": 391, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "5377:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 372, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5510:8:0" - }, - "parameters": { - "id": 371, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 364, - "mutability": "mutable", - "name": "from", - "nameLocation": "5411:4:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5403:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 363, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5403:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 366, - "mutability": "mutable", - "name": "to", - "nameLocation": "5433:2:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5425:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 365, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5425:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 368, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "5453:7:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5445:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 367, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5445:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 370, - "mutability": "mutable", - "name": "_data", - "nameLocation": "5483:5:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5470:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 369, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5470:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5393:101:0" - }, - "returnParameters": { - "id": 373, - "nodeType": "ParameterList", - "parameters": [], - "src": "5519:0:0" - }, - "scope": 865, - "src": "5368:320:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 419, - "nodeType": "Block", - "src": "6691:166:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 404, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 394, - "src": "6711:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 405, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 396, - "src": "6717:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 406, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 398, - "src": "6721:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 403, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 724, - "src": "6701:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6701:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 408, - "nodeType": "ExpressionStatement", - "src": "6701:28:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 411, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 394, - "src": "6770:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 412, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 396, - "src": "6776:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 413, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 398, - "src": "6780:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 414, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 400, - "src": "6789:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 410, - "name": "_checkOnERC721Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 842, - "src": "6747:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,address,uint256,bytes memory) returns (bool)" - } - }, - "id": 415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6747:48:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 416, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6797:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 409, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6739:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6739:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 418, - "nodeType": "ExpressionStatement", - "src": "6739:111:0" - } - ] - }, - "documentation": { - "id": 392, - "nodeType": "StructuredDocumentation", - "src": "5694:851:0", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n `_data` is additional data, it has no specified format and it is sent in call to `to`.\n This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.\n implement alternative mechanisms to perform token transfer, such as signature-based.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "id": 420, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeTransfer", - "nameLocation": "6559:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 401, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 394, - "mutability": "mutable", - "name": "from", - "nameLocation": "6590:4:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6582:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 393, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6582:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 396, - "mutability": "mutable", - "name": "to", - "nameLocation": "6612:2:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6604:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 395, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6604:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 398, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "6632:7:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6624:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 397, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6624:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 400, - "mutability": "mutable", - "name": "_data", - "nameLocation": "6662:5:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6649:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 399, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6649:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6572:101:0" - }, - "returnParameters": { - "id": 402, - "nodeType": "ParameterList", - "parameters": [], - "src": "6691:0:0" - }, - "scope": 865, - "src": "6550:307:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 437, - "nodeType": "Block", - "src": "7231:54:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 428, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "7248:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 430, - "indexExpression": { - "id": 429, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 423, - "src": "7256:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7248:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 433, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7276:1:0", - "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": 432, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7268:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 431, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7268:7:0", - "typeDescriptions": {} - } - }, - "id": 434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7268:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7248:30:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 427, - "id": 436, - "nodeType": "Return", - "src": "7241:37:0" - } - ] - }, - "documentation": { - "id": 421, - "nodeType": "StructuredDocumentation", - "src": "6863:292:0", - "text": " @dev Returns whether `tokenId` exists.\n Tokens can be managed by their owner or approved accounts via {approve} or {setApprovalForAll}.\n Tokens start existing when they are minted (`_mint`),\n and stop existing when they are burned (`_burn`)." - }, - "id": 438, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_exists", - "nameLocation": "7169:7:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 424, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 423, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "7185:7:0", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "7177:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 422, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7177:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7176:17:0" - }, - "returnParameters": { - "id": 427, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 426, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "7225:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 425, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7225:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7224:6:0" - }, - "scope": 865, - "src": "7160:125:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 478, - "nodeType": "Block", - "src": "7542:245:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 450, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7568:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 449, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "7560:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 451, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7560:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7578:46:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "typeString": "literal_string \"ERC721: operator query for nonexistent token\"" - }, - "value": "ERC721: operator query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "typeString": "literal_string \"ERC721: operator query for nonexistent token\"" - } - ], - "id": 448, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7552:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 454, - "nodeType": "ExpressionStatement", - "src": "7552:73:0" - }, - { - "assignments": [ - 456 - ], - "declarations": [ - { - "constant": false, - "id": 456, - "mutability": "mutable", - "name": "owner", - "nameLocation": "7643:5:0", - "nodeType": "VariableDeclaration", - "scope": 478, - "src": "7635:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 455, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7635:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 461, - "initialValue": { - "arguments": [ - { - "id": 459, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7666:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 457, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "7651:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "7651:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7651:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7635:39:0" - }, - { - "expression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 462, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7692:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 463, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "7703:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7692:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 466, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "7729:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 467, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7736:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 465, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 315, - "src": "7712:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7712:32:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7692:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 474, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 471, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7760:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 470, - "name": "getApproved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 280, - "src": "7748:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 472, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7748:20:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 473, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7772:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7748:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7692:87:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 476, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7691:89:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 447, - "id": 477, - "nodeType": "Return", - "src": "7684:96:0" - } - ] - }, - "documentation": { - "id": 439, - "nodeType": "StructuredDocumentation", - "src": "7291:147:0", - "text": " @dev Returns whether `spender` is allowed to manage `tokenId`.\n Requirements:\n - `tokenId` must exist." - }, - "id": 479, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_isApprovedOrOwner", - "nameLocation": "7452:18:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 444, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 441, - "mutability": "mutable", - "name": "spender", - "nameLocation": "7479:7:0", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7471:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 440, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7471:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 443, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "7496:7:0", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7488:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 442, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7488:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7470:34:0" - }, - "returnParameters": { - "id": 447, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7536:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 445, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7536:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7535:6:0" - }, - "scope": 865, - "src": "7443:344:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 493, - "nodeType": "Block", - "src": "8182:43:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 488, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "8202:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 489, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "8206:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "", - "id": 490, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8215:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 487, - "name": "_safeMint", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 494, - 523 - ], - "referencedDeclaration": 523, - "src": "8192:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,uint256,bytes memory)" - } - }, - "id": 491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8192:26:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 492, - "nodeType": "ExpressionStatement", - "src": "8192:26:0" - } - ] - }, - "documentation": { - "id": 480, - "nodeType": "StructuredDocumentation", - "src": "7793:319:0", - "text": " @dev Safely mints `tokenId` and transfers it to `to`.\n Requirements:\n - `tokenId` must not exist.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "id": 494, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeMint", - "nameLocation": "8126:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 485, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 482, - "mutability": "mutable", - "name": "to", - "nameLocation": "8144:2:0", - "nodeType": "VariableDeclaration", - "scope": 494, - "src": "8136:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 481, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8136:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 484, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "8156:7:0", - "nodeType": "VariableDeclaration", - "scope": 494, - "src": "8148:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 483, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8148:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8135:29:0" - }, - "returnParameters": { - "id": 486, - "nodeType": "ParameterList", - "parameters": [], - "src": "8182:0:0" - }, - "scope": 865, - "src": "8117:108:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 522, - "nodeType": "Block", - "src": "8561:196:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 505, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 497, - "src": "8577:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 506, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "8581:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 504, - "name": "_mint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "8571:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 507, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8571:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 508, - "nodeType": "ExpressionStatement", - "src": "8571:18:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 513, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8651:1:0", - "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": 512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8643:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 511, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8643:7:0", - "typeDescriptions": {} - } - }, - "id": 514, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8643:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 515, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 497, - "src": "8655:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 516, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "8659:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 517, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 501, - "src": "8668:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 510, - "name": "_checkOnERC721Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 842, - "src": "8620:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,address,uint256,bytes memory) returns (bool)" - } - }, - "id": 518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8620:54:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 519, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8688:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 509, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8599:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8599:151:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 521, - "nodeType": "ExpressionStatement", - "src": "8599:151:0" - } - ] - }, - "documentation": { - "id": 495, - "nodeType": "StructuredDocumentation", - "src": "8231:210:0", - "text": " @dev Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is\n forwarded in {IERC721Receiver-onERC721Received} to contract recipients." - }, - "id": 523, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeMint", - "nameLocation": "8455:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 502, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 497, - "mutability": "mutable", - "name": "to", - "nameLocation": "8482:2:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8474:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 496, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8474:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 499, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "8502:7:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8494:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 498, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8494:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 501, - "mutability": "mutable", - "name": "_data", - "nameLocation": "8532:5:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8519:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 500, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8519:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8464:79:0" - }, - "returnParameters": { - "id": 503, - "nodeType": "ParameterList", - "parameters": [], - "src": "8561:0:0" - }, - "scope": 865, - "src": "8446:311:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 588, - "nodeType": "Block", - "src": "9140:366:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 532, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9158:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 535, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9172:1:0", - "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": 534, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9164:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 533, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9164:7:0", - "typeDescriptions": {} - } - }, - "id": 536, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9164:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "9158:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", - "id": 538, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9176:34:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", - "typeString": "literal_string \"ERC721: mint to the zero address\"" - }, - "value": "ERC721: mint to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", - "typeString": "literal_string \"ERC721: mint to the zero address\"" - } - ], - "id": 531, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9150:61:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 540, - "nodeType": "ExpressionStatement", - "src": "9150:61:0" - }, - { - "expression": { - "arguments": [ - { - "id": 545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "9229:17:0", - "subExpression": { - "arguments": [ - { - "id": 543, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9238:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 542, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "9230:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9230:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", - "id": 546, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9248:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", - "typeString": "literal_string \"ERC721: token already minted\"" - }, - "value": "ERC721: token already minted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", - "typeString": "literal_string \"ERC721: token already minted\"" - } - ], - "id": 541, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9221:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9221:58:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 548, - "nodeType": "ExpressionStatement", - "src": "9221:58:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9319:1:0", - "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": 551, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9311:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 550, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9311:7:0", - "typeDescriptions": {} - } - }, - "id": 553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9311:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 554, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9323:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 555, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9327:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 549, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "9290:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9290:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 557, - "nodeType": "ExpressionStatement", - "src": "9290:45:0" - }, - { - "expression": { - "id": 562, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 558, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "9346:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 560, - "indexExpression": { - "id": 559, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9356:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9346:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 561, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9363:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9346:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 563, - "nodeType": "ExpressionStatement", - "src": "9346:18:0" - }, - { - "expression": { - "id": 568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 564, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "9374:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 566, - "indexExpression": { - "id": 565, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9382:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9374:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 567, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9393:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "9374:21:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 569, - "nodeType": "ExpressionStatement", - "src": "9374:21:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9428:1:0", - "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": 572, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9420:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 571, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9420:7:0", - "typeDescriptions": {} - } - }, - "id": 574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9420:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 575, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9432:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 576, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9436:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 570, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "9411:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9411:33:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 578, - "nodeType": "EmitStatement", - "src": "9406:38:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9483:1:0", - "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": 581, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9475:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 580, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9475:7:0", - "typeDescriptions": {} - } - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9475:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 584, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9487:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 585, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9491:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 579, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "9455:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9455:44:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 587, - "nodeType": "ExpressionStatement", - "src": "9455:44:0" - } - ] - }, - "documentation": { - "id": 524, - "nodeType": "StructuredDocumentation", - "src": "8763:311:0", - "text": " @dev Mints `tokenId` and transfers it to `to`.\n WARNING: Usage of this method is discouraged, use {_safeMint} whenever possible\n Requirements:\n - `tokenId` must not exist.\n - `to` cannot be the zero address.\n Emits a {Transfer} event." - }, - "id": 589, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_mint", - "nameLocation": "9088:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 529, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 526, - "mutability": "mutable", - "name": "to", - "nameLocation": "9102:2:0", - "nodeType": "VariableDeclaration", - "scope": 589, - "src": "9094:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 525, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9094:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 528, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "9114:7:0", - "nodeType": "VariableDeclaration", - "scope": 589, - "src": "9106:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 527, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9106:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9093:29:0" - }, - "returnParameters": { - "id": 530, - "nodeType": "ParameterList", - "parameters": [], - "src": "9140:0:0" - }, - "scope": 865, - "src": "9079:427:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 648, - "nodeType": "Block", - "src": "9772:357:0", - "statements": [ - { - "assignments": [ - 596 - ], - "declarations": [ - { - "constant": false, - "id": 596, - "mutability": "mutable", - "name": "owner", - "nameLocation": "9790:5:0", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "9782:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 595, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9782:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 601, - "initialValue": { - "arguments": [ - { - "id": 599, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9813:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 597, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "9798:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "9798:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9798:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9782:39:0" - }, - { - "expression": { - "arguments": [ - { - "id": 603, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "9853:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9868:1:0", - "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": 605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9860:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 604, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9860:7:0", - "typeDescriptions": {} - } - }, - "id": 607, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9860:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 608, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9872:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 602, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "9832:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9832:48:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 610, - "nodeType": "ExpressionStatement", - "src": "9832:48:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9935:1:0", - "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": 613, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9927:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 612, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9927:7:0", - "typeDescriptions": {} - } - }, - "id": 615, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9927:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 616, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9939:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 611, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "9918:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9918:29:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 618, - "nodeType": "ExpressionStatement", - "src": "9918:29:0" - }, - { - "expression": { - "id": 623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 619, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "9958:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 621, - "indexExpression": { - "id": 620, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "9968:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9958:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 622, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9978:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9958:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 624, - "nodeType": "ExpressionStatement", - "src": "9958:21:0" - }, - { - "expression": { - "id": 628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "9989:23:0", - "subExpression": { - "baseExpression": { - "id": 625, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "9996:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 627, - "indexExpression": { - "id": 626, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10004:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9996:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 629, - "nodeType": "ExpressionStatement", - "src": "9989:23:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 631, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "10037:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 634, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10052:1:0", - "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": 633, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10044:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 632, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10044:7:0", - "typeDescriptions": {} - } - }, - "id": 635, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10044:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 636, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10056:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 630, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "10028:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10028:36:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 638, - "nodeType": "EmitStatement", - "src": "10023:41:0" - }, - { - "expression": { - "arguments": [ - { - "id": 640, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "10095:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 643, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10110:1:0", - "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": 642, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10102:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 641, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10102:7:0", - "typeDescriptions": {} - } - }, - "id": 644, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10102:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 645, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10114:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 639, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "10075:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10075:47:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 647, - "nodeType": "ExpressionStatement", - "src": "10075:47:0" - } - ] - }, - "documentation": { - "id": 590, - "nodeType": "StructuredDocumentation", - "src": "9512:206:0", - "text": " @dev Destroys `tokenId`.\n The approval is cleared when the token is burned.\n Requirements:\n - `tokenId` must exist.\n Emits a {Transfer} event." - }, - "id": 649, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_burn", - "nameLocation": "9732:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 593, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 592, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "9746:7:0", - "nodeType": "VariableDeclaration", - "scope": 649, - "src": "9738:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 591, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9738:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9737:17:0" - }, - "returnParameters": { - "id": 594, - "nodeType": "ParameterList", - "parameters": [], - "src": "9772:0:0" - }, - "scope": 865, - "src": "9723:406:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 723, - "nodeType": "Block", - "src": "10562:496:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 662, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10595:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 660, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "10580:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "10580:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10580:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 664, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10607:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10580:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f7272656374206f776e6572", - "id": 666, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10613:39:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" - }, - "value": "ERC721: transfer from incorrect owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" - } - ], - "id": 659, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10572:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 667, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10572:81:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 668, - "nodeType": "ExpressionStatement", - "src": "10572:81:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 670, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10671:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10685:1:0", - "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": 672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10677:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 671, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10677:7:0", - "typeDescriptions": {} - } - }, - "id": 674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10677:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10671:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 676, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10689:38:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "typeString": "literal_string \"ERC721: transfer to the zero address\"" - }, - "value": "ERC721: transfer to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "typeString": "literal_string \"ERC721: transfer to the zero address\"" - } - ], - "id": 669, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10663:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10663:65:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 678, - "nodeType": "ExpressionStatement", - "src": "10663:65:0" - }, - { - "expression": { - "arguments": [ - { - "id": 680, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10760:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 681, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10766:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 682, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10770:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 679, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "10739:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10739:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 684, - "nodeType": "ExpressionStatement", - "src": "10739:39:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10857:1:0", - "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": 687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10849:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 686, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10849:7:0", - "typeDescriptions": {} - } - }, - "id": 689, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10849:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 690, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10861:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 685, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "10840:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10840:29:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 692, - "nodeType": "ExpressionStatement", - "src": "10840:29:0" - }, - { - "expression": { - "id": 697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 693, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "10880:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 695, - "indexExpression": { - "id": 694, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10890:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10880:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10899:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "10880:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 698, - "nodeType": "ExpressionStatement", - "src": "10880:20:0" - }, - { - "expression": { - "id": 703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 699, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "10910:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 701, - "indexExpression": { - "id": 700, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10920:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10910:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 702, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10927:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "10910:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 704, - "nodeType": "ExpressionStatement", - "src": "10910:18:0" - }, - { - "expression": { - "id": 709, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 705, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "10938:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 707, - "indexExpression": { - "id": 706, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10946:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10938:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 708, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10957:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10938:21:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 710, - "nodeType": "ExpressionStatement", - "src": "10938:21:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 712, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10984:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 713, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10990:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 714, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 711, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "10975:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10975:27:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 716, - "nodeType": "EmitStatement", - "src": "10970:32:0" - }, - { - "expression": { - "arguments": [ - { - "id": 718, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "11033:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 719, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "11039:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 720, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "11043:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 717, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "11013:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11013:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 722, - "nodeType": "ExpressionStatement", - "src": "11013:38:0" - } - ] - }, - "documentation": { - "id": 650, - "nodeType": "StructuredDocumentation", - "src": "10135:313:0", - "text": " @dev Transfers `tokenId` from `from` to `to`.\n As opposed to {transferFrom}, this imposes no restrictions on msg.sender.\n Requirements:\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n Emits a {Transfer} event." - }, - "id": 724, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transfer", - "nameLocation": "10462:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 657, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 652, - "mutability": "mutable", - "name": "from", - "nameLocation": "10489:4:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10481:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 651, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10481:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 654, - "mutability": "mutable", - "name": "to", - "nameLocation": "10511:2:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10503:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 653, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10503:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 656, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "10531:7:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10523:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 655, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10523:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10471:73:0" - }, - "returnParameters": { - "id": 658, - "nodeType": "ParameterList", - "parameters": [], - "src": "10562:0:0" - }, - "scope": 865, - "src": "10453:605:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 747, - "nodeType": "Block", - "src": "11233:107:0", - "statements": [ - { - "expression": { - "id": 736, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 732, - "name": "_tokenApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 39, - "src": "11243:15:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 734, - "indexExpression": { - "id": 733, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11259:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11243:24:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 735, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "11270:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "11243:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 737, - "nodeType": "ExpressionStatement", - "src": "11243:29:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "id": 741, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11311:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 739, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "11296:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "11296:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11296:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 743, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "11321:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 744, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11325:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 738, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 889, - "src": "11287:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11287:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 746, - "nodeType": "EmitStatement", - "src": "11282:51:0" - } - ] - }, - "documentation": { - "id": 725, - "nodeType": "StructuredDocumentation", - "src": "11064:100:0", - "text": " @dev Approve `to` to operate on `tokenId`\n Emits a {Approval} event." - }, - "id": 748, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_approve", - "nameLocation": "11178:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 727, - "mutability": "mutable", - "name": "to", - "nameLocation": "11195:2:0", - "nodeType": "VariableDeclaration", - "scope": 748, - "src": "11187:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 726, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11187:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 729, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "11207:7:0", - "nodeType": "VariableDeclaration", - "scope": 748, - "src": "11199:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 728, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11199:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11186:29:0" - }, - "returnParameters": { - "id": 731, - "nodeType": "ParameterList", - "parameters": [], - "src": "11233:0:0" - }, - "scope": 865, - "src": "11169:171:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 779, - "nodeType": "Block", - "src": "11598:184:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 759, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11616:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 760, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11625:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "11616:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", - "id": 762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11635:27:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "typeString": "literal_string \"ERC721: approve to caller\"" - }, - "value": "ERC721: approve to caller" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "typeString": "literal_string \"ERC721: approve to caller\"" - } - ], - "id": 758, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11608:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11608:55:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 764, - "nodeType": "ExpressionStatement", - "src": "11608:55:0" - }, - { - "expression": { - "id": 771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 765, - "name": "_operatorApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45, - "src": "11673:18:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 768, - "indexExpression": { - "id": 766, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11692:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11673:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 769, - "indexExpression": { - "id": 767, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11699:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11673:35:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 770, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "11711:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "11673:46:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 772, - "nodeType": "ExpressionStatement", - "src": "11673:46:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 774, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11749:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 775, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11756:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 776, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "11766:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 773, - "name": "ApprovalForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "11734:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", - "typeString": "function (address,address,bool)" - } - }, - "id": 777, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11734:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 778, - "nodeType": "EmitStatement", - "src": "11729:46:0" - } - ] - }, - "documentation": { - "id": 749, - "nodeType": "StructuredDocumentation", - "src": "11346:124:0", - "text": " @dev Approve `operator` to operate on all of `owner` tokens\n Emits a {ApprovalForAll} event." - }, - "id": 780, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setApprovalForAll", - "nameLocation": "11484:18:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 756, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 751, - "mutability": "mutable", - "name": "owner", - "nameLocation": "11520:5:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11512:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 750, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11512:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 753, - "mutability": "mutable", - "name": "operator", - "nameLocation": "11543:8:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11535:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 752, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11535:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 755, - "mutability": "mutable", - "name": "approved", - "nameLocation": "11566:8:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11561:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 754, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11561:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "11502:78:0" - }, - "returnParameters": { - "id": 757, - "nodeType": "ParameterList", - "parameters": [], - "src": "11598:0:0" - }, - "scope": 865, - "src": "11475:307:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 841, - "nodeType": "Block", - "src": "12491:622:0", - "statements": [ - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 794, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12505:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 1172, - "src": "12505:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$bound_to$_t_address_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 796, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12505:15:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 839, - "nodeType": "Block", - "src": "13071:36:0", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 837, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13092:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 793, - "id": 838, - "nodeType": "Return", - "src": "13085:11:0" - } - ] - }, - "id": 840, - "nodeType": "IfStatement", - "src": "12501:606:0", - "trueBody": { - "id": 836, - "nodeType": "Block", - "src": "12522:543:0", - "statements": [ - { - "clauses": [ - { - "block": { - "id": 816, - "nodeType": "Block", - "src": "12637:91:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 810, - "name": "retval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 808, - "src": "12662:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 811, - "name": "IERC721Receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 999, - "src": "12672:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$999_$", - "typeString": "type(contract IERC721Receiver)" - } - }, - "id": 812, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "onERC721Received", - "nodeType": "MemberAccess", - "referencedDeclaration": 998, - "src": "12672:32:0", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_calldata_ptr_$returns$_t_bytes4_$", - "typeString": "function IERC721Receiver.onERC721Received(address,address,uint256,bytes calldata) returns (bytes4)" - } - }, - "id": 813, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "12672:41:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "12662:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 793, - "id": 815, - "nodeType": "Return", - "src": "12655:58:0" - } - ] - }, - "errorName": "", - "id": 817, - "nodeType": "TryCatchClause", - "parameters": { - "id": 809, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 808, - "mutability": "mutable", - "name": "retval", - "nameLocation": "12629:6:0", - "nodeType": "VariableDeclaration", - "scope": 817, - "src": "12622:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 807, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "12622:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "12621:15:0" - }, - "src": "12613:115:0" - }, - { - "block": { - "id": 833, - "nodeType": "Block", - "src": "12757:298:0", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 821, - "name": "reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "12779:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12779:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 823, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12796:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12779:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 831, - "nodeType": "Block", - "src": "12906:135:0", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "12937:86:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12974:2:0", - "type": "", - "value": "32" - }, - { - "name": "reason", - "nodeType": "YulIdentifier", - "src": "12978:6:0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12970:3:0" - }, - "nodeType": "YulFunctionCall", - "src": "12970:15:0" - }, - { - "arguments": [ - { - "name": "reason", - "nodeType": "YulIdentifier", - "src": "12993:6:0" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12987:5:0" - }, - "nodeType": "YulFunctionCall", - "src": "12987:13:0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12963:6:0" - }, - "nodeType": "YulFunctionCall", - "src": "12963:38:0" - }, - "nodeType": "YulExpressionStatement", - "src": "12963:38:0" - } - ] - }, - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 819, - "isOffset": false, - "isSlot": false, - "src": "12978:6:0", - "valueSize": 1 - }, - { - "declaration": 819, - "isOffset": false, - "isSlot": false, - "src": "12993:6:0", - "valueSize": 1 - } - ], - "id": 830, - "nodeType": "InlineAssembly", - "src": "12928:95:0" - } - ] - }, - "id": 832, - "nodeType": "IfStatement", - "src": "12775:266:0", - "trueBody": { - "id": 829, - "nodeType": "Block", - "src": "12799:101:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 826, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12828:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 825, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "12821:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12821:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 828, - "nodeType": "ExpressionStatement", - "src": "12821:60:0" - } - ] - } - } - ] - }, - "errorName": "", - "id": 834, - "nodeType": "TryCatchClause", - "parameters": { - "id": 820, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 819, - "mutability": "mutable", - "name": "reason", - "nameLocation": "12749:6:0", - "nodeType": "VariableDeclaration", - "scope": 834, - "src": "12736:19:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 818, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12736:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12735:21:0" - }, - "src": "12729:326:0" - } - ], - "externalCall": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 801, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "12577:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12577:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 803, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "12591:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 804, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 787, - "src": "12597:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 805, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "12606:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "arguments": [ - { - "id": 798, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12556:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 797, - "name": "IERC721Receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 999, - "src": "12540:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$999_$", - "typeString": "type(contract IERC721Receiver)" - } - }, - "id": 799, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12540:19:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC721Receiver_$999", - "typeString": "contract IERC721Receiver" - } - }, - "id": 800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "onERC721Received", - "nodeType": "MemberAccess", - "referencedDeclaration": 998, - "src": "12540:36:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", - "typeString": "function (address,address,uint256,bytes memory) external returns (bytes4)" - } - }, - "id": 806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12540:72:0", - "tryCall": true, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "id": 835, - "nodeType": "TryStatement", - "src": "12536:519:0" - } - ] - } - } - ] - }, - "documentation": { - "id": 781, - "nodeType": "StructuredDocumentation", - "src": "11788:542:0", - "text": " @dev Internal function to invoke {IERC721Receiver-onERC721Received} on a target address.\n The call is not executed if the target address is not a contract.\n @param from address representing the previous owner of the given token ID\n @param to target address that will receive the tokens\n @param tokenId uint256 ID of the token to be transferred\n @param _data bytes optional data to send along with the call\n @return bool whether the call correctly returned the expected magic value" - }, - "id": 842, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkOnERC721Received", - "nameLocation": "12344:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 790, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 783, - "mutability": "mutable", - "name": "from", - "nameLocation": "12384:4:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12376:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 782, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12376:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 785, - "mutability": "mutable", - "name": "to", - "nameLocation": "12406:2:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12398:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 784, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12398:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 787, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "12426:7:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12418:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 786, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12418:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 789, - "mutability": "mutable", - "name": "_data", - "nameLocation": "12456:5:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12443:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 788, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12443:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12366:101:0" - }, - "returnParameters": { - "id": 793, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 792, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12485:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 791, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "12485:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "12484:6:0" - }, - "scope": 865, - "src": "12335:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 852, - "nodeType": "Block", - "src": "13789:2:0", - "statements": [] - }, - "documentation": { - "id": 843, - "nodeType": "StructuredDocumentation", - "src": "13119:545:0", - "text": " @dev Hook that is called before any token transfer. This includes minting\n and burning.\n Calling conditions:\n - When `from` and `to` are both non-zero, ``from``'s `tokenId` will be\n transferred to `to`.\n - When `from` is zero, `tokenId` will be minted for `to`.\n - When `to` is zero, ``from``'s `tokenId` will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." - }, - "id": 853, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_beforeTokenTransfer", - "nameLocation": "13678:20:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 850, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 845, - "mutability": "mutable", - "name": "from", - "nameLocation": "13716:4:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13708:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 844, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13708:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 847, - "mutability": "mutable", - "name": "to", - "nameLocation": "13738:2:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13730:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 846, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13730:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 849, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "13758:7:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13750:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 848, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13750:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13698:73:0" - }, - "returnParameters": { - "id": 851, - "nodeType": "ParameterList", - "parameters": [], - "src": "13789:0:0" - }, - "scope": 865, - "src": "13669:122:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 863, - "nodeType": "Block", - "src": "14282:2:0", - "statements": [] - }, - "documentation": { - "id": 854, - "nodeType": "StructuredDocumentation", - "src": "13797:361:0", - "text": " @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." - }, - "id": 864, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_afterTokenTransfer", - "nameLocation": "14172:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 861, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 856, - "mutability": "mutable", - "name": "from", - "nameLocation": "14209:4:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14201:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 855, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14201:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 858, - "mutability": "mutable", - "name": "to", - "nameLocation": "14231:2:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14223:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 857, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14223:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 860, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "14251:7:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14243:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 859, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14243:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14191:73:0" - }, - "returnParameters": { - "id": 862, - "nodeType": "ParameterList", - "parameters": [], - "src": "14282:0:0" - }, - "scope": 865, - "src": "14163:121:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 866, - "src": "628:13658:0", - "usedErrors": [] - } - ], - "src": "107:14180:0" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", - "exportedSymbols": { - "Address": [ - 1449 - ], - "Context": [ - 1471 - ], - "ERC165": [ - 1772 - ], - "ERC721": [ - 865 - ], - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ], - "IERC721Receiver": [ - 999 - ], - "Strings": [ - 1748 - ] - }, - "id": 866, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "107:23:0" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "file": "./IERC721.sol", - "id": 2, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 982, - "src": "132:23:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", - "file": "./IERC721Receiver.sol", - "id": 3, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1000, - "src": "156:31:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "file": "./extensions/IERC721Metadata.sol", - "id": 4, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1155, - "src": "188:42:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Address.sol", - "file": "../../utils/Address.sol", - "id": 5, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1450, - "src": "231:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Context.sol", - "file": "../../utils/Context.sol", - "id": 6, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1472, - "src": "265:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", - "file": "../../utils/Strings.sol", - "id": 7, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1749, - "src": "299:33:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/ERC165.sol", - "file": "../../utils/introspection/ERC165.sol", - "id": 8, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 866, - "sourceUnit": 1773, - "src": "333:46:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 10, - "name": "Context", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1471, - "src": "647:7:0" - }, - "id": 11, - "nodeType": "InheritanceSpecifier", - "src": "647:7:0" - }, - { - "baseName": { - "id": 12, - "name": "ERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1772, - "src": "656:6:0" - }, - "id": 13, - "nodeType": "InheritanceSpecifier", - "src": "656:6:0" - }, - { - "baseName": { - "id": 14, - "name": "IERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 981, - "src": "664:7:0" - }, - "id": 15, - "nodeType": "InheritanceSpecifier", - "src": "664:7:0" - }, - { - "baseName": { - "id": 16, - "name": "IERC721Metadata", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1154, - "src": "673:15:0" - }, - "id": 17, - "nodeType": "InheritanceSpecifier", - "src": "673:15:0" - } - ], - "canonicalName": "ERC721", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 9, - "nodeType": "StructuredDocumentation", - "src": "381:246:0", - "text": " @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including\n the Metadata extension, but not including the Enumerable extension, which is available separately as\n {ERC721Enumerable}." - }, - "fullyImplemented": true, - "id": 865, - "linearizedBaseContracts": [ - 865, - 1154, - 981, - 1772, - 1784, - 1471 - ], - "name": "ERC721", - "nameLocation": "637:6:0", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 20, - "libraryName": { - "id": 18, - "name": "Address", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1449, - "src": "701:7:0" - }, - "nodeType": "UsingForDirective", - "src": "695:26:0", - "typeName": { - "id": 19, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "713:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - { - "global": false, - "id": 23, - "libraryName": { - "id": 21, - "name": "Strings", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1748, - "src": "732:7:0" - }, - "nodeType": "UsingForDirective", - "src": "726:26:0", - "typeName": { - "id": 22, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "744:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 25, - "mutability": "mutable", - "name": "_name", - "nameLocation": "791:5:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "776:20:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 24, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "776:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 27, - "mutability": "mutable", - "name": "_symbol", - "nameLocation": "838:7:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "823:22:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 26, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "823:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 31, - "mutability": "mutable", - "name": "_owners", - "nameLocation": "934:7:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "898:43:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "typeName": { - "id": 30, - "keyType": { - "id": 28, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "906:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "898:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "valueType": { - "id": 29, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "917:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 35, - "mutability": "mutable", - "name": "_balances", - "nameLocation": "1028:9:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "992:45:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 34, - "keyType": { - "id": 32, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1000:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "992:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 33, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1011:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 39, - "mutability": "mutable", - "name": "_tokenApprovals", - "nameLocation": "1129:15:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "1093:51:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "typeName": { - "id": 38, - "keyType": { - "id": 36, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1101:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "1093:27:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - }, - "valueType": { - "id": 37, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1112:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - }, - "visibility": "private" - }, - { - "constant": false, - "id": 45, - "mutability": "mutable", - "name": "_operatorApprovals", - "nameLocation": "1252:18:0", - "nodeType": "VariableDeclaration", - "scope": 865, - "src": "1199:71:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - }, - "typeName": { - "id": 44, - "keyType": { - "id": 40, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1207:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1199:44:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - }, - "valueType": { - "id": 43, - "keyType": { - "id": 41, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1226:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "1218:24:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - }, - "valueType": { - "id": 42, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1237:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - } - }, - "visibility": "private" - }, - { - "body": { - "id": 61, - "nodeType": "Block", - "src": "1446:57:0", - "statements": [ - { - "expression": { - "id": 55, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 53, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "1456:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 54, - "name": "name_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "1464:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1456:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 56, - "nodeType": "ExpressionStatement", - "src": "1456:13:0" - }, - { - "expression": { - "id": 59, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 57, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 27, - "src": "1479:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 58, - "name": "symbol_", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 50, - "src": "1489:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1479:17:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 60, - "nodeType": "ExpressionStatement", - "src": "1479:17:0" - } - ] - }, - "documentation": { - "id": 46, - "nodeType": "StructuredDocumentation", - "src": "1277:108:0", - "text": " @dev Initializes the contract by setting a `name` and a `symbol` to the token collection." - }, - "id": 62, - "implemented": true, - "kind": "constructor", - "modifiers": [], - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 51, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 48, - "mutability": "mutable", - "name": "name_", - "nameLocation": "1416:5:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "1402:19:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 47, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1402:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 50, - "mutability": "mutable", - "name": "symbol_", - "nameLocation": "1437:7:0", - "nodeType": "VariableDeclaration", - "scope": 62, - "src": "1423:21:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 49, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1423:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1401:44:0" - }, - "returnParameters": { - "id": 52, - "nodeType": "ParameterList", - "parameters": [], - "src": "1446:0:0" - }, - "scope": 865, - "src": "1390:113:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "baseFunctions": [ - 1771, - 1783 - ], - "body": { - "id": 92, - "nodeType": "Block", - "src": "1678:192:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 90, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 85, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 78, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 73, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1707:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 75, - "name": "IERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 981, - "src": "1727:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721_$981_$", - "typeString": "type(contract IERC721)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC721_$981_$", - "typeString": "type(contract IERC721)" - } - ], - "id": 74, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "1722:4:0", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 76, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1722:13:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721_$981", - "typeString": "type(contract IERC721)" - } - }, - "id": 77, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "1722:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "1707:40:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 84, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 79, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1763:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "arguments": [ - { - "id": 81, - "name": "IERC721Metadata", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1154, - "src": "1783:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$1154_$", - "typeString": "type(contract IERC721Metadata)" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_type$_t_contract$_IERC721Metadata_$1154_$", - "typeString": "type(contract IERC721Metadata)" - } - ], - "id": 80, - "name": "type", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967269, - "src": "1778:4:0", - "typeDescriptions": { - "typeIdentifier": "t_function_metatype_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 82, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1778:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_magic_meta_type_t_contract$_IERC721Metadata_$1154", - "typeString": "type(contract IERC721Metadata)" - } - }, - "id": 83, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "interfaceId", - "nodeType": "MemberAccess", - "src": "1778:33:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "1763:48:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1707:104:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 88, - "name": "interfaceId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 65, - "src": "1851:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - ], - "expression": { - "id": 86, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1827:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721_$865_$", - "typeString": "type(contract super ERC721)" - } - }, - "id": 87, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "supportsInterface", - "nodeType": "MemberAccess", - "referencedDeclaration": 1771, - "src": "1827:23:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_bytes4_$returns$_t_bool_$", - "typeString": "function (bytes4) view returns (bool)" - } - }, - "id": 89, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1827:36:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "1707:156:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 72, - "id": 91, - "nodeType": "Return", - "src": "1688:175:0" - } - ] - }, - "documentation": { - "id": 63, - "nodeType": "StructuredDocumentation", - "src": "1509:56:0", - "text": " @dev See {IERC165-supportsInterface}." - }, - "functionSelector": "01ffc9a7", - "id": 93, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "1579:17:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 69, - "nodeType": "OverrideSpecifier", - "overrides": [ - { - "id": 67, - "name": "ERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1772, - "src": "1646:6:0" - }, - { - "id": 68, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "1654:7:0" - } - ], - "src": "1637:25:0" - }, - "parameters": { - "id": 66, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 65, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "1604:11:0", - "nodeType": "VariableDeclaration", - "scope": 93, - "src": "1597:18:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 64, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "1597:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "1596:20:0" - }, - "returnParameters": { - "id": 72, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 71, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 93, - "src": "1672:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 70, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1672:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "1671:6:0" - }, - "scope": 865, - "src": "1570:300:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 906 - ], - "body": { - "id": 116, - "nodeType": "Block", - "src": "2010:124:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 108, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 103, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "2028:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 106, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2045:1:0", - "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": 105, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2037:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 104, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2037:7:0", - "typeDescriptions": {} - } - }, - "id": 107, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2037:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2028:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a2062616c616e636520717565727920666f7220746865207a65726f2061646472657373", - "id": 109, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2049:44:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "typeString": "literal_string \"ERC721: balance query for the zero address\"" - }, - "value": "ERC721: balance query for the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", - "typeString": "literal_string \"ERC721: balance query for the zero address\"" - } - ], - "id": 102, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2020:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 110, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2020:74:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 111, - "nodeType": "ExpressionStatement", - "src": "2020:74:0" - }, - { - "expression": { - "baseExpression": { - "id": 112, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "2111:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 114, - "indexExpression": { - "id": 113, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "2121:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2111:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 101, - "id": 115, - "nodeType": "Return", - "src": "2104:23:0" - } - ] - }, - "documentation": { - "id": 94, - "nodeType": "StructuredDocumentation", - "src": "1876:48:0", - "text": " @dev See {IERC721-balanceOf}." - }, - "functionSelector": "70a08231", - "id": 117, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "1938:9:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 98, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1983:8:0" - }, - "parameters": { - "id": 97, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 96, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1956:5:0", - "nodeType": "VariableDeclaration", - "scope": 117, - "src": "1948:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 95, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1948:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1947:15:0" - }, - "returnParameters": { - "id": 101, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 100, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 117, - "src": "2001:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 99, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2001:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2000:9:0" - }, - "scope": 865, - "src": "1929:205:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 914 - ], - "body": { - "id": 144, - "nodeType": "Block", - "src": "2272:154:0", - "statements": [ - { - "assignments": [ - 127 - ], - "declarations": [ - { - "constant": false, - "id": 127, - "mutability": "mutable", - "name": "owner", - "nameLocation": "2290:5:0", - "nodeType": "VariableDeclaration", - "scope": 144, - "src": "2282:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 126, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2282:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 131, - "initialValue": { - "baseExpression": { - "id": 128, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "2298:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 130, - "indexExpression": { - "id": 129, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 120, - "src": "2306:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2298:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2282:32:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 133, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2332:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2349:1:0", - "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": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2341:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 134, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2341:7:0", - "typeDescriptions": {} - } - }, - "id": 137, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2341:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2332:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206f776e657220717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 139, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2353:43:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "typeString": "literal_string \"ERC721: owner query for nonexistent token\"" - }, - "value": "ERC721: owner query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", - "typeString": "literal_string \"ERC721: owner query for nonexistent token\"" - } - ], - "id": 132, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2324:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 140, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2324:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 141, - "nodeType": "ExpressionStatement", - "src": "2324:73:0" - }, - { - "expression": { - "id": 142, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 127, - "src": "2414:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 125, - "id": 143, - "nodeType": "Return", - "src": "2407:12:0" - } - ] - }, - "documentation": { - "id": 118, - "nodeType": "StructuredDocumentation", - "src": "2140:46:0", - "text": " @dev See {IERC721-ownerOf}." - }, - "functionSelector": "6352211e", - "id": 145, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "ownerOf", - "nameLocation": "2200:7:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 122, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2245:8:0" - }, - "parameters": { - "id": 121, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 120, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2216:7:0", - "nodeType": "VariableDeclaration", - "scope": 145, - "src": "2208:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 119, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2208:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2207:17:0" - }, - "returnParameters": { - "id": 125, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 124, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 145, - "src": "2263:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 123, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2263:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "2262:9:0" - }, - "scope": 865, - "src": "2191:235:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1139 - ], - "body": { - "id": 154, - "nodeType": "Block", - "src": "2557:29:0", - "statements": [ - { - "expression": { - "id": 152, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 25, - "src": "2574:5:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 151, - "id": 153, - "nodeType": "Return", - "src": "2567:12:0" - } - ] - }, - "documentation": { - "id": 146, - "nodeType": "StructuredDocumentation", - "src": "2432:51:0", - "text": " @dev See {IERC721Metadata-name}." - }, - "functionSelector": "06fdde03", - "id": 155, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "2497:4:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 148, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2524:8:0" - }, - "parameters": { - "id": 147, - "nodeType": "ParameterList", - "parameters": [], - "src": "2501:2:0" - }, - "returnParameters": { - "id": 151, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 150, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 155, - "src": "2542:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 149, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2542:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2541:15:0" - }, - "scope": 865, - "src": "2488:98:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1145 - ], - "body": { - "id": 164, - "nodeType": "Block", - "src": "2721:31:0", - "statements": [ - { - "expression": { - "id": 162, - "name": "_symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 27, - "src": "2738:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "functionReturnParameters": 161, - "id": 163, - "nodeType": "Return", - "src": "2731:14:0" - } - ] - }, - "documentation": { - "id": 156, - "nodeType": "StructuredDocumentation", - "src": "2592:53:0", - "text": " @dev See {IERC721Metadata-symbol}." - }, - "functionSelector": "95d89b41", - "id": 165, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "2659:6:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 158, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2688:8:0" - }, - "parameters": { - "id": 157, - "nodeType": "ParameterList", - "parameters": [], - "src": "2665:2:0" - }, - "returnParameters": { - "id": 161, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 160, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 165, - "src": "2706:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 159, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2706:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2705:15:0" - }, - "scope": 865, - "src": "2650:102:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 1153 - ], - "body": { - "id": 206, - "nodeType": "Block", - "src": "2906:241:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 176, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 168, - "src": "2932:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 175, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "2924:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 177, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2924:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732314d657461646174613a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 178, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2942:49:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "typeString": "literal_string \"ERC721Metadata: URI query for nonexistent token\"" - }, - "value": "ERC721Metadata: URI query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", - "typeString": "literal_string \"ERC721Metadata: URI query for nonexistent token\"" - } - ], - "id": 174, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "2916:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 179, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2916:76:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 180, - "nodeType": "ExpressionStatement", - "src": "2916:76:0" - }, - { - "assignments": [ - 182 - ], - "declarations": [ - { - "constant": false, - "id": 182, - "mutability": "mutable", - "name": "baseURI", - "nameLocation": "3017:7:0", - "nodeType": "VariableDeclaration", - "scope": 206, - "src": "3003:21:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 181, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3003:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 185, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 183, - "name": "_baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "3027:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", - "typeString": "function () view returns (string memory)" - } - }, - "id": 184, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3027:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3003:34:0" - }, - { - "expression": { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 192, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 188, - "name": "baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 182, - "src": "3060:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 187, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3054:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 186, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "3054:5:0", - "typeDescriptions": {} - } - }, - "id": 189, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3054:14:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 190, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "3054:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 191, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3078:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "3054:25:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseExpression": { - "hexValue": "", - "id": 203, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3138:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "id": 204, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "Conditional", - "src": "3054:86:0", - "trueExpression": { - "arguments": [ - { - "arguments": [ - { - "id": 197, - "name": "baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 182, - "src": "3106:7:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 198, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 168, - "src": "3115:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 199, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "toString", - "nodeType": "MemberAccess", - "referencedDeclaration": 1630, - "src": "3115:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$returns$_t_string_memory_ptr_$bound_to$_t_uint256_$", - "typeString": "function (uint256) pure returns (string memory)" - } - }, - "id": 200, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3115:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 195, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "3089:3:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 196, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "3089:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 201, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3089:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 194, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "3082:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 193, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3082:6:0", - "typeDescriptions": {} - } - }, - "id": 202, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3082:53:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 173, - "id": 205, - "nodeType": "Return", - "src": "3047:93:0" - } - ] - }, - "documentation": { - "id": 166, - "nodeType": "StructuredDocumentation", - "src": "2758:55:0", - "text": " @dev See {IERC721Metadata-tokenURI}." - }, - "functionSelector": "c87b56dd", - "id": 207, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "2827:8:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 170, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "2873:8:0" - }, - "parameters": { - "id": 169, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 168, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2844:7:0", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "2836:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 167, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2836:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2835:17:0" - }, - "returnParameters": { - "id": 173, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 172, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 207, - "src": "2891:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 171, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2891:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "2890:15:0" - }, - "scope": 865, - "src": "2818:329:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 215, - "nodeType": "Block", - "src": "3455:26:0", - "statements": [ - { - "expression": { - "hexValue": "", - "id": 213, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3472:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - }, - "functionReturnParameters": 212, - "id": 214, - "nodeType": "Return", - "src": "3465:9:0" - } - ] - }, - "documentation": { - "id": 208, - "nodeType": "StructuredDocumentation", - "src": "3153:231:0", - "text": " @dev Base URI for computing {tokenURI}. If set, the resulting URI for each\n token will be the concatenation of the `baseURI` and the `tokenId`. Empty\n by default, can be overridden in child contracts." - }, - "id": 216, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_baseURI", - "nameLocation": "3398:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 209, - "nodeType": "ParameterList", - "parameters": [], - "src": "3406:2:0" - }, - "returnParameters": { - "id": 212, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 211, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 216, - "src": "3440:13:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 210, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "3440:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "3439:15:0" - }, - "scope": 865, - "src": "3389:92:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "baseFunctions": [ - 954 - ], - "body": { - "id": 258, - "nodeType": "Block", - "src": "3608:331:0", - "statements": [ - { - "assignments": [ - 226 - ], - "declarations": [ - { - "constant": false, - "id": 226, - "mutability": "mutable", - "name": "owner", - "nameLocation": "3626:5:0", - "nodeType": "VariableDeclaration", - "scope": 258, - "src": "3618:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3618:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 231, - "initialValue": { - "arguments": [ - { - "id": 229, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3649:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 227, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "3634:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 228, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "3634:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 230, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3634:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "3618:39:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 235, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 233, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 219, - "src": "3675:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 234, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3681:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3675:11:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e6572", - "id": 236, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3688:35:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "typeString": "literal_string \"ERC721: approval to current owner\"" - }, - "value": "ERC721: approval to current owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", - "typeString": "literal_string \"ERC721: approval to current owner\"" - } - ], - "id": 232, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3667:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 237, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3667:57:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 238, - "nodeType": "ExpressionStatement", - "src": "3667:57:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 249, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 243, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 240, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "3756:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 241, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3756:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 242, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3772:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "3756:21:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 245, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 226, - "src": "3798:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 246, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "3805:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 247, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3805:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 244, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 315, - "src": "3781:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 248, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3781:37:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "3756:62:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656420666f7220616c6c", - "id": 250, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "3832:58:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "typeString": "literal_string \"ERC721: approve caller is not owner nor approved for all\"" - }, - "value": "ERC721: approve caller is not owner nor approved for all" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", - "typeString": "literal_string \"ERC721: approve caller is not owner nor approved for all\"" - } - ], - "id": 239, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "3735:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 251, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3735:165:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 252, - "nodeType": "ExpressionStatement", - "src": "3735:165:0" - }, - { - "expression": { - "arguments": [ - { - "id": 254, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 219, - "src": "3920:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 255, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 221, - "src": "3924:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 253, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "3911:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 256, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "3911:21:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 257, - "nodeType": "ExpressionStatement", - "src": "3911:21:0" - } - ] - }, - "documentation": { - "id": 217, - "nodeType": "StructuredDocumentation", - "src": "3487:46:0", - "text": " @dev See {IERC721-approve}." - }, - "functionSelector": "095ea7b3", - "id": 259, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "3547:7:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 223, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "3599:8:0" - }, - "parameters": { - "id": 222, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 219, - "mutability": "mutable", - "name": "to", - "nameLocation": "3563:2:0", - "nodeType": "VariableDeclaration", - "scope": 259, - "src": "3555:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 218, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3555:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 221, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3575:7:0", - "nodeType": "VariableDeclaration", - "scope": 259, - "src": "3567:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 220, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3567:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3554:29:0" - }, - "returnParameters": { - "id": 224, - "nodeType": "ParameterList", - "parameters": [], - "src": "3608:0:0" - }, - "scope": 865, - "src": "3538:401:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 970 - ], - "body": { - "id": 279, - "nodeType": "Block", - "src": "4085:132:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 270, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "4111:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 269, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "4103:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 271, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4103:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f76656420717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 272, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4121:46:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "typeString": "literal_string \"ERC721: approved query for nonexistent token\"" - }, - "value": "ERC721: approved query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", - "typeString": "literal_string \"ERC721: approved query for nonexistent token\"" - } - ], - "id": 268, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4095:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 273, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4095:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 274, - "nodeType": "ExpressionStatement", - "src": "4095:73:0" - }, - { - "expression": { - "baseExpression": { - "id": 275, - "name": "_tokenApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 39, - "src": "4186:15:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 277, - "indexExpression": { - "id": 276, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 262, - "src": "4202:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4186:24:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "functionReturnParameters": 267, - "id": 278, - "nodeType": "Return", - "src": "4179:31:0" - } - ] - }, - "documentation": { - "id": 260, - "nodeType": "StructuredDocumentation", - "src": "3945:50:0", - "text": " @dev See {IERC721-getApproved}." - }, - "functionSelector": "081812fc", - "id": 280, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getApproved", - "nameLocation": "4009:11:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 264, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4058:8:0" - }, - "parameters": { - "id": 263, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 262, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4029:7:0", - "nodeType": "VariableDeclaration", - "scope": 280, - "src": "4021:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 261, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4021:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4020:17:0" - }, - "returnParameters": { - "id": 267, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 266, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 280, - "src": "4076:7:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 265, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4076:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4075:9:0" - }, - "scope": 865, - "src": "4000:217:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 962 - ], - "body": { - "id": 296, - "nodeType": "Block", - "src": "4368:69:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 290, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "4397:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 291, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4397:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 292, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 283, - "src": "4411:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 293, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 285, - "src": "4421:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 289, - "name": "_setApprovalForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 780, - "src": "4378:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", - "typeString": "function (address,address,bool)" - } - }, - "id": 294, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4378:52:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 295, - "nodeType": "ExpressionStatement", - "src": "4378:52:0" - } - ] - }, - "documentation": { - "id": 281, - "nodeType": "StructuredDocumentation", - "src": "4223:56:0", - "text": " @dev See {IERC721-setApprovalForAll}." - }, - "functionSelector": "a22cb465", - "id": 297, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "setApprovalForAll", - "nameLocation": "4293:17:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 287, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4359:8:0" - }, - "parameters": { - "id": 286, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 283, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4319:8:0", - "nodeType": "VariableDeclaration", - "scope": 297, - "src": "4311:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 282, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4311:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 285, - "mutability": "mutable", - "name": "approved", - "nameLocation": "4334:8:0", - "nodeType": "VariableDeclaration", - "scope": 297, - "src": "4329:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 284, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4329:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4310:33:0" - }, - "returnParameters": { - "id": 288, - "nodeType": "ParameterList", - "parameters": [], - "src": "4368:0:0" - }, - "scope": 865, - "src": "4284:153:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 980 - ], - "body": { - "id": 314, - "nodeType": "Block", - "src": "4606:59:0", - "statements": [ - { - "expression": { - "baseExpression": { - "baseExpression": { - "id": 308, - "name": "_operatorApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45, - "src": "4623:18:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 310, - "indexExpression": { - "id": 309, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 300, - "src": "4642:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 312, - "indexExpression": { - "id": 311, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 302, - "src": "4649:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "4623:35:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 307, - "id": 313, - "nodeType": "Return", - "src": "4616:42:0" - } - ] - }, - "documentation": { - "id": 298, - "nodeType": "StructuredDocumentation", - "src": "4443:55:0", - "text": " @dev See {IERC721-isApprovedForAll}." - }, - "functionSelector": "e985e9c5", - "id": 315, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "isApprovedForAll", - "nameLocation": "4512:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 304, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4582:8:0" - }, - "parameters": { - "id": 303, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 300, - "mutability": "mutable", - "name": "owner", - "nameLocation": "4537:5:0", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4529:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 299, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4529:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 302, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4552:8:0", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4544:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 301, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4544:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4528:33:0" - }, - "returnParameters": { - "id": 307, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 306, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 315, - "src": "4600:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 305, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4600:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4599:6:0" - }, - "scope": 865, - "src": "4503:162:0", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 946 - ], - "body": { - "id": 341, - "nodeType": "Block", - "src": "4846:211:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 328, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "4935:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 329, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4935:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 330, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 322, - "src": "4949:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 327, - "name": "_isApprovedOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 479, - "src": "4916:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) view returns (bool)" - } - }, - "id": 331, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4916:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", - "id": 332, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "4959:51:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - }, - "value": "ERC721: transfer caller is not owner nor approved" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - } - ], - "id": 326, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "4908:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 333, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "4908:103:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 334, - "nodeType": "ExpressionStatement", - "src": "4908:103:0" - }, - { - "expression": { - "arguments": [ - { - "id": 336, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 318, - "src": "5032:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 337, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 320, - "src": "5038:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 338, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 322, - "src": "5042:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 335, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 724, - "src": "5022:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 339, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5022:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 340, - "nodeType": "ExpressionStatement", - "src": "5022:28:0" - } - ] - }, - "documentation": { - "id": 316, - "nodeType": "StructuredDocumentation", - "src": "4671:51:0", - "text": " @dev See {IERC721-transferFrom}." - }, - "functionSelector": "23b872dd", - "id": 342, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "4736:12:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 324, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "4837:8:0" - }, - "parameters": { - "id": 323, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 318, - "mutability": "mutable", - "name": "from", - "nameLocation": "4766:4:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4758:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 317, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4758:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 320, - "mutability": "mutable", - "name": "to", - "nameLocation": "4788:2:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4780:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 319, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4780:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 322, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4808:7:0", - "nodeType": "VariableDeclaration", - "scope": 342, - "src": "4800:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 321, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4800:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4748:73:0" - }, - "returnParameters": { - "id": 325, - "nodeType": "ParameterList", - "parameters": [], - "src": "4846:0:0" - }, - "scope": 865, - "src": "4727:330:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 936 - ], - "body": { - "id": 360, - "nodeType": "Block", - "src": "5246:56:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 354, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 345, - "src": "5273:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 355, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 347, - "src": "5279:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 356, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5283:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "", - "id": 357, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5292:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 353, - "name": "safeTransferFrom", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 361, - 391 - ], - "referencedDeclaration": 391, - "src": "5256:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,bytes memory)" - } - }, - "id": 358, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5256:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 359, - "nodeType": "ExpressionStatement", - "src": "5256:39:0" - } - ] - }, - "documentation": { - "id": 343, - "nodeType": "StructuredDocumentation", - "src": "5063:55:0", - "text": " @dev See {IERC721-safeTransferFrom}." - }, - "functionSelector": "42842e0e", - "id": 361, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "5132:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 351, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5237:8:0" - }, - "parameters": { - "id": 350, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 345, - "mutability": "mutable", - "name": "from", - "nameLocation": "5166:4:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5158:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 344, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5158:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 347, - "mutability": "mutable", - "name": "to", - "nameLocation": "5188:2:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5180:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 346, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5180:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 349, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "5208:7:0", - "nodeType": "VariableDeclaration", - "scope": 361, - "src": "5200:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 348, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5200:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "5148:73:0" - }, - "returnParameters": { - "id": 352, - "nodeType": "ParameterList", - "parameters": [], - "src": "5246:0:0" - }, - "scope": 865, - "src": "5123:179:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "baseFunctions": [ - 926 - ], - "body": { - "id": 390, - "nodeType": "Block", - "src": "5519:169:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 376, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "5556:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 377, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5556:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 378, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 368, - "src": "5570:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 375, - "name": "_isApprovedOrOwner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 479, - "src": "5537:18:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", - "typeString": "function (address,uint256) view returns (bool)" - } - }, - "id": 379, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5537:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564", - "id": 380, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "5580:51:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - }, - "value": "ERC721: transfer caller is not owner nor approved" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", - "typeString": "literal_string \"ERC721: transfer caller is not owner nor approved\"" - } - ], - "id": 374, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "5529:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 381, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5529:103:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 382, - "nodeType": "ExpressionStatement", - "src": "5529:103:0" - }, - { - "expression": { - "arguments": [ - { - "id": 384, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5656:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 385, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 366, - "src": "5662:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 386, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 368, - "src": "5666:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 387, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "5675:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 383, - "name": "_safeTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 420, - "src": "5642:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,address,uint256,bytes memory)" - } - }, - "id": 388, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "5642:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 389, - "nodeType": "ExpressionStatement", - "src": "5642:39:0" - } - ] - }, - "documentation": { - "id": 362, - "nodeType": "StructuredDocumentation", - "src": "5308:55:0", - "text": " @dev See {IERC721-safeTransferFrom}." - }, - "functionSelector": "b88d4fde", - "id": 391, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "5377:16:0", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 372, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "5510:8:0" - }, - "parameters": { - "id": 371, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 364, - "mutability": "mutable", - "name": "from", - "nameLocation": "5411:4:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5403:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 363, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5403:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 366, - "mutability": "mutable", - "name": "to", - "nameLocation": "5433:2:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5425:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 365, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5425:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 368, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "5453:7:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5445:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 367, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "5445:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 370, - "mutability": "mutable", - "name": "_data", - "nameLocation": "5483:5:0", - "nodeType": "VariableDeclaration", - "scope": 391, - "src": "5470:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 369, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "5470:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "5393:101:0" - }, - "returnParameters": { - "id": 373, - "nodeType": "ParameterList", - "parameters": [], - "src": "5519:0:0" - }, - "scope": 865, - "src": "5368:320:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 419, - "nodeType": "Block", - "src": "6691:166:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 404, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 394, - "src": "6711:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 405, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 396, - "src": "6717:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 406, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 398, - "src": "6721:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 403, - "name": "_transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 724, - "src": "6701:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 407, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6701:28:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 408, - "nodeType": "ExpressionStatement", - "src": "6701:28:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 411, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 394, - "src": "6770:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 412, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 396, - "src": "6776:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 413, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 398, - "src": "6780:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 414, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 400, - "src": "6789:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 410, - "name": "_checkOnERC721Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 842, - "src": "6747:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,address,uint256,bytes memory) returns (bool)" - } - }, - "id": 415, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6747:48:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 416, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6797:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 409, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "6739:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 417, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "6739:111:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 418, - "nodeType": "ExpressionStatement", - "src": "6739:111:0" - } - ] - }, - "documentation": { - "id": 392, - "nodeType": "StructuredDocumentation", - "src": "5694:851:0", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n `_data` is additional data, it has no specified format and it is sent in call to `to`.\n This internal function is equivalent to {safeTransferFrom}, and can be used to e.g.\n implement alternative mechanisms to perform token transfer, such as signature-based.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "id": 420, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeTransfer", - "nameLocation": "6559:13:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 401, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 394, - "mutability": "mutable", - "name": "from", - "nameLocation": "6590:4:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6582:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 393, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6582:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 396, - "mutability": "mutable", - "name": "to", - "nameLocation": "6612:2:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6604:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 395, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "6604:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 398, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "6632:7:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6624:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 397, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "6624:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 400, - "mutability": "mutable", - "name": "_data", - "nameLocation": "6662:5:0", - "nodeType": "VariableDeclaration", - "scope": 420, - "src": "6649:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 399, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "6649:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "6572:101:0" - }, - "returnParameters": { - "id": 402, - "nodeType": "ParameterList", - "parameters": [], - "src": "6691:0:0" - }, - "scope": 865, - "src": "6550:307:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 437, - "nodeType": "Block", - "src": "7231:54:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 435, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "baseExpression": { - "id": 428, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "7248:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 430, - "indexExpression": { - "id": 429, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 423, - "src": "7256:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7248:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 433, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7276:1:0", - "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": 432, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "7268:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 431, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7268:7:0", - "typeDescriptions": {} - } - }, - "id": 434, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7268:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7248:30:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 427, - "id": 436, - "nodeType": "Return", - "src": "7241:37:0" - } - ] - }, - "documentation": { - "id": 421, - "nodeType": "StructuredDocumentation", - "src": "6863:292:0", - "text": " @dev Returns whether `tokenId` exists.\n Tokens can be managed by their owner or approved accounts via {approve} or {setApprovalForAll}.\n Tokens start existing when they are minted (`_mint`),\n and stop existing when they are burned (`_burn`)." - }, - "id": 438, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_exists", - "nameLocation": "7169:7:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 424, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 423, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "7185:7:0", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "7177:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 422, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7177:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7176:17:0" - }, - "returnParameters": { - "id": 427, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 426, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 438, - "src": "7225:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 425, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7225:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7224:6:0" - }, - "scope": 865, - "src": "7160:125:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 478, - "nodeType": "Block", - "src": "7542:245:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 450, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7568:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 449, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "7560:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 451, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7560:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 452, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7578:46:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "typeString": "literal_string \"ERC721: operator query for nonexistent token\"" - }, - "value": "ERC721: operator query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", - "typeString": "literal_string \"ERC721: operator query for nonexistent token\"" - } - ], - "id": 448, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "7552:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 453, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7552:73:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 454, - "nodeType": "ExpressionStatement", - "src": "7552:73:0" - }, - { - "assignments": [ - 456 - ], - "declarations": [ - { - "constant": false, - "id": 456, - "mutability": "mutable", - "name": "owner", - "nameLocation": "7643:5:0", - "nodeType": "VariableDeclaration", - "scope": 478, - "src": "7635:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 455, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7635:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 461, - "initialValue": { - "arguments": [ - { - "id": 459, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7666:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 457, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "7651:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 458, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "7651:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 460, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7651:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "7635:39:0" - }, - { - "expression": { - "components": [ - { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 475, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 469, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 464, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 462, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7692:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 463, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "7703:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7692:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "arguments": [ - { - "id": 466, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "7729:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 467, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7736:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 465, - "name": "isApprovedForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 315, - "src": "7712:16:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_bool_$", - "typeString": "function (address,address) view returns (bool)" - } - }, - "id": 468, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7712:32:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7692:52:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "||", - "rightExpression": { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 474, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 471, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "7760:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 470, - "name": "getApproved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 280, - "src": "7748:11:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 472, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7748:20:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 473, - "name": "spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 441, - "src": "7772:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "7748:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "7692:87:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "id": 476, - "isConstant": false, - "isInlineArray": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "TupleExpression", - "src": "7691:89:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 447, - "id": 477, - "nodeType": "Return", - "src": "7684:96:0" - } - ] - }, - "documentation": { - "id": 439, - "nodeType": "StructuredDocumentation", - "src": "7291:147:0", - "text": " @dev Returns whether `spender` is allowed to manage `tokenId`.\n Requirements:\n - `tokenId` must exist." - }, - "id": 479, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_isApprovedOrOwner", - "nameLocation": "7452:18:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 444, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 441, - "mutability": "mutable", - "name": "spender", - "nameLocation": "7479:7:0", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7471:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 440, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7471:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 443, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "7496:7:0", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7488:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 442, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "7488:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "7470:34:0" - }, - "returnParameters": { - "id": 447, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 446, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 479, - "src": "7536:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 445, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7536:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "7535:6:0" - }, - "scope": 865, - "src": "7443:344:0", - "stateMutability": "view", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 493, - "nodeType": "Block", - "src": "8182:43:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 488, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 482, - "src": "8202:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 489, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "8206:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "hexValue": "", - "id": 490, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8215:2:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - }, - "value": "" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", - "typeString": "literal_string \"\"" - } - ], - "id": 487, - "name": "_safeMint", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 494, - 523 - ], - "referencedDeclaration": 523, - "src": "8192:9:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$", - "typeString": "function (address,uint256,bytes memory)" - } - }, - "id": 491, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8192:26:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 492, - "nodeType": "ExpressionStatement", - "src": "8192:26:0" - } - ] - }, - "documentation": { - "id": 480, - "nodeType": "StructuredDocumentation", - "src": "7793:319:0", - "text": " @dev Safely mints `tokenId` and transfers it to `to`.\n Requirements:\n - `tokenId` must not exist.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "id": 494, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeMint", - "nameLocation": "8126:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 485, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 482, - "mutability": "mutable", - "name": "to", - "nameLocation": "8144:2:0", - "nodeType": "VariableDeclaration", - "scope": 494, - "src": "8136:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 481, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8136:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 484, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "8156:7:0", - "nodeType": "VariableDeclaration", - "scope": 494, - "src": "8148:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 483, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8148:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "8135:29:0" - }, - "returnParameters": { - "id": 486, - "nodeType": "ParameterList", - "parameters": [], - "src": "8182:0:0" - }, - "scope": 865, - "src": "8117:108:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 522, - "nodeType": "Block", - "src": "8561:196:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 505, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 497, - "src": "8577:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 506, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "8581:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 504, - "name": "_mint", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 589, - "src": "8571:5:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 507, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8571:18:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 508, - "nodeType": "ExpressionStatement", - "src": "8571:18:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 513, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8651:1:0", - "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": 512, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8643:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 511, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8643:7:0", - "typeDescriptions": {} - } - }, - "id": 514, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8643:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 515, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 497, - "src": "8655:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 516, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 499, - "src": "8659:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 517, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 501, - "src": "8668:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 510, - "name": "_checkOnERC721Received", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 842, - "src": "8620:22:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bool_$", - "typeString": "function (address,address,uint256,bytes memory) returns (bool)" - } - }, - "id": 518, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8620:54:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 519, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8688:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 509, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "8599:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 520, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8599:151:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 521, - "nodeType": "ExpressionStatement", - "src": "8599:151:0" - } - ] - }, - "documentation": { - "id": 495, - "nodeType": "StructuredDocumentation", - "src": "8231:210:0", - "text": " @dev Same as {xref-ERC721-_safeMint-address-uint256-}[`_safeMint`], with an additional `data` parameter which is\n forwarded in {IERC721Receiver-onERC721Received} to contract recipients." - }, - "id": 523, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_safeMint", - "nameLocation": "8455:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 502, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 497, - "mutability": "mutable", - "name": "to", - "nameLocation": "8482:2:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8474:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 496, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8474:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 499, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "8502:7:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8494:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 498, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "8494:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 501, - "mutability": "mutable", - "name": "_data", - "nameLocation": "8532:5:0", - "nodeType": "VariableDeclaration", - "scope": 523, - "src": "8519:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 500, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "8519:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "8464:79:0" - }, - "returnParameters": { - "id": 503, - "nodeType": "ParameterList", - "parameters": [], - "src": "8561:0:0" - }, - "scope": 865, - "src": "8446:311:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 588, - "nodeType": "Block", - "src": "9140:366:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 537, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 532, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9158:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 535, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9172:1:0", - "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": 534, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9164:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 533, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9164:7:0", - "typeDescriptions": {} - } - }, - "id": 536, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9164:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "9158:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", - "id": 538, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9176:34:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", - "typeString": "literal_string \"ERC721: mint to the zero address\"" - }, - "value": "ERC721: mint to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", - "typeString": "literal_string \"ERC721: mint to the zero address\"" - } - ], - "id": 531, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9150:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 539, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9150:61:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 540, - "nodeType": "ExpressionStatement", - "src": "9150:61:0" - }, - { - "expression": { - "arguments": [ - { - "id": 545, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "!", - "prefix": true, - "src": "9229:17:0", - "subExpression": { - "arguments": [ - { - "id": 543, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9238:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 542, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "9230:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 544, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9230:16:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", - "id": 546, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9248:30:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", - "typeString": "literal_string \"ERC721: token already minted\"" - }, - "value": "ERC721: token already minted" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", - "typeString": "literal_string \"ERC721: token already minted\"" - } - ], - "id": 541, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "9221:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 547, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9221:58:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 548, - "nodeType": "ExpressionStatement", - "src": "9221:58:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 552, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9319:1:0", - "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": 551, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9311:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 550, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9311:7:0", - "typeDescriptions": {} - } - }, - "id": 553, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9311:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 554, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9323:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 555, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9327:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 549, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "9290:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9290:45:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 557, - "nodeType": "ExpressionStatement", - "src": "9290:45:0" - }, - { - "expression": { - "id": 562, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 558, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "9346:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 560, - "indexExpression": { - "id": 559, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9356:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9346:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 561, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9363:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9346:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 563, - "nodeType": "ExpressionStatement", - "src": "9346:18:0" - }, - { - "expression": { - "id": 568, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 564, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "9374:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 566, - "indexExpression": { - "id": 565, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9382:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9374:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 567, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9393:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "9374:21:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 569, - "nodeType": "ExpressionStatement", - "src": "9374:21:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 573, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9428:1:0", - "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": 572, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9420:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 571, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9420:7:0", - "typeDescriptions": {} - } - }, - "id": 574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9420:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 575, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9432:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 576, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9436:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 570, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "9411:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9411:33:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 578, - "nodeType": "EmitStatement", - "src": "9406:38:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 582, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9483:1:0", - "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": 581, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9475:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 580, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9475:7:0", - "typeDescriptions": {} - } - }, - "id": 583, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9475:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 584, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "9487:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 585, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "9491:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 579, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "9455:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9455:44:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 587, - "nodeType": "ExpressionStatement", - "src": "9455:44:0" - } - ] - }, - "documentation": { - "id": 524, - "nodeType": "StructuredDocumentation", - "src": "8763:311:0", - "text": " @dev Mints `tokenId` and transfers it to `to`.\n WARNING: Usage of this method is discouraged, use {_safeMint} whenever possible\n Requirements:\n - `tokenId` must not exist.\n - `to` cannot be the zero address.\n Emits a {Transfer} event." - }, - "id": 589, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_mint", - "nameLocation": "9088:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 529, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 526, - "mutability": "mutable", - "name": "to", - "nameLocation": "9102:2:0", - "nodeType": "VariableDeclaration", - "scope": 589, - "src": "9094:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 525, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9094:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 528, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "9114:7:0", - "nodeType": "VariableDeclaration", - "scope": 589, - "src": "9106:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 527, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9106:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9093:29:0" - }, - "returnParameters": { - "id": 530, - "nodeType": "ParameterList", - "parameters": [], - "src": "9140:0:0" - }, - "scope": 865, - "src": "9079:427:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 648, - "nodeType": "Block", - "src": "9772:357:0", - "statements": [ - { - "assignments": [ - 596 - ], - "declarations": [ - { - "constant": false, - "id": 596, - "mutability": "mutable", - "name": "owner", - "nameLocation": "9790:5:0", - "nodeType": "VariableDeclaration", - "scope": 648, - "src": "9782:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 595, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9782:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "id": 601, - "initialValue": { - "arguments": [ - { - "id": 599, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9813:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 597, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "9798:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 598, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "9798:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 600, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9798:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "9782:39:0" - }, - { - "expression": { - "arguments": [ - { - "id": 603, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "9853:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9868:1:0", - "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": 605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9860:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 604, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9860:7:0", - "typeDescriptions": {} - } - }, - "id": 607, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9860:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 608, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9872:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 602, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "9832:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 609, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9832:48:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 610, - "nodeType": "ExpressionStatement", - "src": "9832:48:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 614, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9935:1:0", - "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": 613, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "9927:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 612, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9927:7:0", - "typeDescriptions": {} - } - }, - "id": 615, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9927:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 616, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "9939:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 611, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "9918:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9918:29:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 618, - "nodeType": "ExpressionStatement", - "src": "9918:29:0" - }, - { - "expression": { - "id": 623, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 619, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "9958:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 621, - "indexExpression": { - "id": 620, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "9968:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9958:16:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 622, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9978:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "9958:21:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 624, - "nodeType": "ExpressionStatement", - "src": "9958:21:0" - }, - { - "expression": { - "id": 628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "9989:23:0", - "subExpression": { - "baseExpression": { - "id": 625, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "9996:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 627, - "indexExpression": { - "id": 626, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10004:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "9996:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 629, - "nodeType": "ExpressionStatement", - "src": "9989:23:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 631, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "10037:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 634, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10052:1:0", - "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": 633, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10044:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 632, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10044:7:0", - "typeDescriptions": {} - } - }, - "id": 635, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10044:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 636, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10056:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 630, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "10028:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 637, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10028:36:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 638, - "nodeType": "EmitStatement", - "src": "10023:41:0" - }, - { - "expression": { - "arguments": [ - { - "id": 640, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 596, - "src": "10095:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "arguments": [ - { - "hexValue": "30", - "id": 643, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10110:1:0", - "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": 642, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10102:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 641, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10102:7:0", - "typeDescriptions": {} - } - }, - "id": 644, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10102:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 645, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 592, - "src": "10114:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 639, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "10075:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 646, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10075:47:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 647, - "nodeType": "ExpressionStatement", - "src": "10075:47:0" - } - ] - }, - "documentation": { - "id": 590, - "nodeType": "StructuredDocumentation", - "src": "9512:206:0", - "text": " @dev Destroys `tokenId`.\n The approval is cleared when the token is burned.\n Requirements:\n - `tokenId` must exist.\n Emits a {Transfer} event." - }, - "id": 649, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_burn", - "nameLocation": "9732:5:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 593, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 592, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "9746:7:0", - "nodeType": "VariableDeclaration", - "scope": 649, - "src": "9738:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 591, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "9738:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "9737:17:0" - }, - "returnParameters": { - "id": 594, - "nodeType": "ParameterList", - "parameters": [], - "src": "9772:0:0" - }, - "scope": 865, - "src": "9723:406:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 723, - "nodeType": "Block", - "src": "10562:496:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 665, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "arguments": [ - { - "id": 662, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10595:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 660, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "10580:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "10580:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 663, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10580:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 664, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10607:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10580:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f7272656374206f776e6572", - "id": 666, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10613:39:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" - }, - "value": "ERC721: transfer from incorrect owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", - "typeString": "literal_string \"ERC721: transfer from incorrect owner\"" - } - ], - "id": 659, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10572:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 667, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10572:81:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 668, - "nodeType": "ExpressionStatement", - "src": "10572:81:0" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 675, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 670, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10671:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "arguments": [ - { - "hexValue": "30", - "id": 673, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10685:1:0", - "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": 672, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10677:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 671, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10677:7:0", - "typeDescriptions": {} - } - }, - "id": 674, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10677:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10671:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f2061646472657373", - "id": 676, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10689:38:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "typeString": "literal_string \"ERC721: transfer to the zero address\"" - }, - "value": "ERC721: transfer to the zero address" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", - "typeString": "literal_string \"ERC721: transfer to the zero address\"" - } - ], - "id": 669, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "10663:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10663:65:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 678, - "nodeType": "ExpressionStatement", - "src": "10663:65:0" - }, - { - "expression": { - "arguments": [ - { - "id": 680, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10760:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 681, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10766:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 682, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10770:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 679, - "name": "_beforeTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "10739:20:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 683, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10739:39:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 684, - "nodeType": "ExpressionStatement", - "src": "10739:39:0" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "hexValue": "30", - "id": 688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10857:1:0", - "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": 687, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "10849:7:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_address_$", - "typeString": "type(address)" - }, - "typeName": { - "id": 686, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10849:7:0", - "typeDescriptions": {} - } - }, - "id": 689, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10849:10:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 690, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10861:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 685, - "name": "_approve", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 748, - "src": "10840:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,uint256)" - } - }, - "id": 691, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10840:29:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 692, - "nodeType": "ExpressionStatement", - "src": "10840:29:0" - }, - { - "expression": { - "id": 697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 693, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "10880:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 695, - "indexExpression": { - "id": 694, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10890:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10880:15:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10899:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "10880:20:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 698, - "nodeType": "ExpressionStatement", - "src": "10880:20:0" - }, - { - "expression": { - "id": 703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 699, - "name": "_balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 35, - "src": "10910:9:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 701, - "indexExpression": { - "id": 700, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10920:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10910:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "hexValue": "31", - "id": 702, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "10927:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "10910:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 704, - "nodeType": "ExpressionStatement", - "src": "10910:18:0" - }, - { - "expression": { - "id": 709, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 705, - "name": "_owners", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 31, - "src": "10938:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 707, - "indexExpression": { - "id": 706, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10946:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "10938:16:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 708, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10957:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "10938:21:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 710, - "nodeType": "ExpressionStatement", - "src": "10938:21:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 712, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "10984:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 713, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "10990:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 714, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "10994:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 711, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 880, - "src": "10975:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "10975:27:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 716, - "nodeType": "EmitStatement", - "src": "10970:32:0" - }, - { - "expression": { - "arguments": [ - { - "id": 718, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 652, - "src": "11033:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 719, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 654, - "src": "11039:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 720, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 656, - "src": "11043:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 717, - "name": "_afterTokenTransfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 864, - "src": "11013:19:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 721, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11013:38:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 722, - "nodeType": "ExpressionStatement", - "src": "11013:38:0" - } - ] - }, - "documentation": { - "id": 650, - "nodeType": "StructuredDocumentation", - "src": "10135:313:0", - "text": " @dev Transfers `tokenId` from `from` to `to`.\n As opposed to {transferFrom}, this imposes no restrictions on msg.sender.\n Requirements:\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n Emits a {Transfer} event." - }, - "id": 724, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_transfer", - "nameLocation": "10462:9:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 657, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 652, - "mutability": "mutable", - "name": "from", - "nameLocation": "10489:4:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10481:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 651, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10481:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 654, - "mutability": "mutable", - "name": "to", - "nameLocation": "10511:2:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10503:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 653, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "10503:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 656, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "10531:7:0", - "nodeType": "VariableDeclaration", - "scope": 724, - "src": "10523:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 655, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "10523:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "10471:73:0" - }, - "returnParameters": { - "id": 658, - "nodeType": "ParameterList", - "parameters": [], - "src": "10562:0:0" - }, - "scope": 865, - "src": "10453:605:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 747, - "nodeType": "Block", - "src": "11233:107:0", - "statements": [ - { - "expression": { - "id": 736, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 732, - "name": "_tokenApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 39, - "src": "11243:15:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_address_$", - "typeString": "mapping(uint256 => address)" - } - }, - "id": 734, - "indexExpression": { - "id": 733, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11259:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11243:24:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 735, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "11270:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "11243:29:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 737, - "nodeType": "ExpressionStatement", - "src": "11243:29:0" - }, - { - "eventCall": { - "arguments": [ - { - "arguments": [ - { - "id": 741, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11311:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 739, - "name": "ERC721", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "11296:6:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC721_$865_$", - "typeString": "type(contract ERC721)" - } - }, - "id": 740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "ownerOf", - "nodeType": "MemberAccess", - "referencedDeclaration": 145, - "src": "11296:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_address_$", - "typeString": "function (uint256) view returns (address)" - } - }, - "id": 742, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11296:23:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 743, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "11321:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 744, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 729, - "src": "11325:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 738, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 889, - "src": "11287:8:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 745, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11287:46:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 746, - "nodeType": "EmitStatement", - "src": "11282:51:0" - } - ] - }, - "documentation": { - "id": 725, - "nodeType": "StructuredDocumentation", - "src": "11064:100:0", - "text": " @dev Approve `to` to operate on `tokenId`\n Emits a {Approval} event." - }, - "id": 748, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_approve", - "nameLocation": "11178:8:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 730, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 727, - "mutability": "mutable", - "name": "to", - "nameLocation": "11195:2:0", - "nodeType": "VariableDeclaration", - "scope": 748, - "src": "11187:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 726, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11187:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 729, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "11207:7:0", - "nodeType": "VariableDeclaration", - "scope": 748, - "src": "11199:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 728, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "11199:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "11186:29:0" - }, - "returnParameters": { - "id": 731, - "nodeType": "ParameterList", - "parameters": [], - "src": "11233:0:0" - }, - "scope": 865, - "src": "11169:171:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 779, - "nodeType": "Block", - "src": "11598:184:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 761, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 759, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11616:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "id": 760, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11625:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "11616:17:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", - "id": 762, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "11635:27:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "typeString": "literal_string \"ERC721: approve to caller\"" - }, - "value": "ERC721: approve to caller" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", - "typeString": "literal_string \"ERC721: approve to caller\"" - } - ], - "id": 758, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "11608:7:0", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 763, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11608:55:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 764, - "nodeType": "ExpressionStatement", - "src": "11608:55:0" - }, - { - "expression": { - "id": 771, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "baseExpression": { - "id": 765, - "name": "_operatorApprovals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 45, - "src": "11673:18:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$", - "typeString": "mapping(address => mapping(address => bool))" - } - }, - "id": 768, - "indexExpression": { - "id": 766, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11692:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "11673:25:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", - "typeString": "mapping(address => bool)" - } - }, - "id": 769, - "indexExpression": { - "id": 767, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11699:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "11673:35:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 770, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "11711:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "11673:46:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 772, - "nodeType": "ExpressionStatement", - "src": "11673:46:0" - }, - { - "eventCall": { - "arguments": [ - { - "id": 774, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 751, - "src": "11749:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 775, - "name": "operator", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 753, - "src": "11756:8:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 776, - "name": "approved", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 755, - "src": "11766:8:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 773, - "name": "ApprovalForAll", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 898, - "src": "11734:14:0", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_bool_$returns$__$", - "typeString": "function (address,address,bool)" - } - }, - "id": 777, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "11734:41:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 778, - "nodeType": "EmitStatement", - "src": "11729:46:0" - } - ] - }, - "documentation": { - "id": 749, - "nodeType": "StructuredDocumentation", - "src": "11346:124:0", - "text": " @dev Approve `operator` to operate on all of `owner` tokens\n Emits a {ApprovalForAll} event." - }, - "id": 780, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setApprovalForAll", - "nameLocation": "11484:18:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 756, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 751, - "mutability": "mutable", - "name": "owner", - "nameLocation": "11520:5:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11512:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 750, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11512:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 753, - "mutability": "mutable", - "name": "operator", - "nameLocation": "11543:8:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11535:16:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 752, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "11535:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 755, - "mutability": "mutable", - "name": "approved", - "nameLocation": "11566:8:0", - "nodeType": "VariableDeclaration", - "scope": 780, - "src": "11561:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 754, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "11561:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "11502:78:0" - }, - "returnParameters": { - "id": 757, - "nodeType": "ParameterList", - "parameters": [], - "src": "11598:0:0" - }, - "scope": 865, - "src": "11475:307:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 841, - "nodeType": "Block", - "src": "12491:622:0", - "statements": [ - { - "condition": { - "arguments": [], - "expression": { - "argumentTypes": [], - "expression": { - "id": 794, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12505:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 795, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "isContract", - "nodeType": "MemberAccess", - "referencedDeclaration": 1172, - "src": "12505:13:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$bound_to$_t_address_$", - "typeString": "function (address) view returns (bool)" - } - }, - "id": 796, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12505:15:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 839, - "nodeType": "Block", - "src": "13071:36:0", - "statements": [ - { - "expression": { - "hexValue": "74727565", - "id": 837, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "13092:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 793, - "id": 838, - "nodeType": "Return", - "src": "13085:11:0" - } - ] - }, - "id": 840, - "nodeType": "IfStatement", - "src": "12501:606:0", - "trueBody": { - "id": 836, - "nodeType": "Block", - "src": "12522:543:0", - "statements": [ - { - "clauses": [ - { - "block": { - "id": 816, - "nodeType": "Block", - "src": "12637:91:0", - "statements": [ - { - "expression": { - "commonType": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "id": 814, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 810, - "name": "retval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 808, - "src": "12662:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "expression": { - "expression": { - "id": 811, - "name": "IERC721Receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 999, - "src": "12672:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$999_$", - "typeString": "type(contract IERC721Receiver)" - } - }, - "id": 812, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "onERC721Received", - "nodeType": "MemberAccess", - "referencedDeclaration": 998, - "src": "12672:32:0", - "typeDescriptions": { - "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_calldata_ptr_$returns$_t_bytes4_$", - "typeString": "function IERC721Receiver.onERC721Received(address,address,uint256,bytes calldata) returns (bytes4)" - } - }, - "id": 813, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "selector", - "nodeType": "MemberAccess", - "src": "12672:41:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "src": "12662:51:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "functionReturnParameters": 793, - "id": 815, - "nodeType": "Return", - "src": "12655:58:0" - } - ] - }, - "errorName": "", - "id": 817, - "nodeType": "TryCatchClause", - "parameters": { - "id": 809, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 808, - "mutability": "mutable", - "name": "retval", - "nameLocation": "12629:6:0", - "nodeType": "VariableDeclaration", - "scope": 817, - "src": "12622:13:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 807, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "12622:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "12621:15:0" - }, - "src": "12613:115:0" - }, - { - "block": { - "id": 833, - "nodeType": "Block", - "src": "12757:298:0", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 824, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 821, - "name": "reason", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 819, - "src": "12779:6:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 822, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "12779:13:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 823, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12796:1:0", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "12779:18:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": { - "id": 831, - "nodeType": "Block", - "src": "12906:135:0", - "statements": [ - { - "AST": { - "nodeType": "YulBlock", - "src": "12937:86:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "12974:2:0", - "type": "", - "value": "32" - }, - { - "name": "reason", - "nodeType": "YulIdentifier", - "src": "12978:6:0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "12970:3:0" - }, - "nodeType": "YulFunctionCall", - "src": "12970:15:0" - }, - { - "arguments": [ - { - "name": "reason", - "nodeType": "YulIdentifier", - "src": "12993:6:0" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "12987:5:0" - }, - "nodeType": "YulFunctionCall", - "src": "12987:13:0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "12963:6:0" - }, - "nodeType": "YulFunctionCall", - "src": "12963:38:0" - }, - "nodeType": "YulExpressionStatement", - "src": "12963:38:0" - } - ] - }, - "evmVersion": "london", - "externalReferences": [ - { - "declaration": 819, - "isOffset": false, - "isSlot": false, - "src": "12978:6:0", - "valueSize": 1 - }, - { - "declaration": 819, - "isOffset": false, - "isSlot": false, - "src": "12993:6:0", - "valueSize": 1 - } - ], - "id": 830, - "nodeType": "InlineAssembly", - "src": "12928:95:0" - } - ] - }, - "id": 832, - "nodeType": "IfStatement", - "src": "12775:266:0", - "trueBody": { - "id": 829, - "nodeType": "Block", - "src": "12799:101:0", - "statements": [ - { - "expression": { - "arguments": [ - { - "hexValue": "4552433732313a207472616e7366657220746f206e6f6e20455243373231526563656976657220696d706c656d656e746572", - "id": 826, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "12828:52:0", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - }, - "value": "ERC721: transfer to non ERC721Receiver implementer" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", - "typeString": "literal_string \"ERC721: transfer to non ERC721Receiver implementer\"" - } - ], - "id": 825, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967277, - 4294967277 - ], - "referencedDeclaration": 4294967277, - "src": "12821:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", - "typeString": "function (string memory) pure" - } - }, - "id": 827, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12821:60:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 828, - "nodeType": "ExpressionStatement", - "src": "12821:60:0" - } - ] - } - } - ] - }, - "errorName": "", - "id": 834, - "nodeType": "TryCatchClause", - "parameters": { - "id": 820, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 819, - "mutability": "mutable", - "name": "reason", - "nameLocation": "12749:6:0", - "nodeType": "VariableDeclaration", - "scope": 834, - "src": "12736:19:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 818, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12736:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12735:21:0" - }, - "src": "12729:326:0" - } - ], - "externalCall": { - "arguments": [ - { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 801, - "name": "_msgSender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1461, - "src": "12577:10:0", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", - "typeString": "function () view returns (address)" - } - }, - "id": 802, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12577:12:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 803, - "name": "from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 783, - "src": "12591:4:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "id": 804, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 787, - "src": "12597:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 805, - "name": "_data", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 789, - "src": "12606:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "expression": { - "arguments": [ - { - "id": 798, - "name": "to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "12556:2:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 797, - "name": "IERC721Receiver", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 999, - "src": "12540:15:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_IERC721Receiver_$999_$", - "typeString": "type(contract IERC721Receiver)" - } - }, - "id": 799, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12540:19:0", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_IERC721Receiver_$999", - "typeString": "contract IERC721Receiver" - } - }, - "id": 800, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "onERC721Received", - "nodeType": "MemberAccess", - "referencedDeclaration": 998, - "src": "12540:36:0", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", - "typeString": "function (address,address,uint256,bytes memory) external returns (bytes4)" - } - }, - "id": 806, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "12540:72:0", - "tryCall": true, - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "id": 835, - "nodeType": "TryStatement", - "src": "12536:519:0" - } - ] - } - } - ] - }, - "documentation": { - "id": 781, - "nodeType": "StructuredDocumentation", - "src": "11788:542:0", - "text": " @dev Internal function to invoke {IERC721Receiver-onERC721Received} on a target address.\n The call is not executed if the target address is not a contract.\n @param from address representing the previous owner of the given token ID\n @param to target address that will receive the tokens\n @param tokenId uint256 ID of the token to be transferred\n @param _data bytes optional data to send along with the call\n @return bool whether the call correctly returned the expected magic value" - }, - "id": 842, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_checkOnERC721Received", - "nameLocation": "12344:22:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 790, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 783, - "mutability": "mutable", - "name": "from", - "nameLocation": "12384:4:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12376:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 782, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12376:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 785, - "mutability": "mutable", - "name": "to", - "nameLocation": "12406:2:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12398:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 784, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "12398:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 787, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "12426:7:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12418:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 786, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "12418:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 789, - "mutability": "mutable", - "name": "_data", - "nameLocation": "12456:5:0", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12443:18:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 788, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "12443:5:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "12366:101:0" - }, - "returnParameters": { - "id": 793, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 792, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 842, - "src": "12485:4:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 791, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "12485:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "12484:6:0" - }, - "scope": 865, - "src": "12335:778:0", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "private" - }, - { - "body": { - "id": 852, - "nodeType": "Block", - "src": "13789:2:0", - "statements": [] - }, - "documentation": { - "id": 843, - "nodeType": "StructuredDocumentation", - "src": "13119:545:0", - "text": " @dev Hook that is called before any token transfer. This includes minting\n and burning.\n Calling conditions:\n - When `from` and `to` are both non-zero, ``from``'s `tokenId` will be\n transferred to `to`.\n - When `from` is zero, `tokenId` will be minted for `to`.\n - When `to` is zero, ``from``'s `tokenId` will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." - }, - "id": 853, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_beforeTokenTransfer", - "nameLocation": "13678:20:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 850, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 845, - "mutability": "mutable", - "name": "from", - "nameLocation": "13716:4:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13708:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 844, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13708:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 847, - "mutability": "mutable", - "name": "to", - "nameLocation": "13738:2:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13730:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 846, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "13730:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 849, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "13758:7:0", - "nodeType": "VariableDeclaration", - "scope": 853, - "src": "13750:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 848, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "13750:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "13698:73:0" - }, - "returnParameters": { - "id": 851, - "nodeType": "ParameterList", - "parameters": [], - "src": "13789:0:0" - }, - "scope": 865, - "src": "13669:122:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "body": { - "id": 863, - "nodeType": "Block", - "src": "14282:2:0", - "statements": [] - }, - "documentation": { - "id": 854, - "nodeType": "StructuredDocumentation", - "src": "13797:361:0", - "text": " @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]." - }, - "id": 864, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_afterTokenTransfer", - "nameLocation": "14172:19:0", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 861, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 856, - "mutability": "mutable", - "name": "from", - "nameLocation": "14209:4:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14201:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 855, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14201:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 858, - "mutability": "mutable", - "name": "to", - "nameLocation": "14231:2:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14223:10:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 857, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "14223:7:0", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 860, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "14251:7:0", - "nodeType": "VariableDeclaration", - "scope": 864, - "src": "14243:15:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 859, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "14243:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "14191:73:0" - }, - "returnParameters": { - "id": 862, - "nodeType": "ParameterList", - "parameters": [], - "src": "14282:0:0" - }, - "scope": 865, - "src": "14163:121:0", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 866, - "src": "628:13658:0", - "usedErrors": [] - } - ], - "src": "107:14180:0" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.957Z", - "devdoc": { - "details": "Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including the Metadata extension, but not including the Enumerable extension, which is available separately as {ERC721Enumerable}.", - "kind": "dev", - "methods": { - "approve(address,uint256)": { - "details": "See {IERC721-approve}." - }, - "balanceOf(address)": { - "details": "See {IERC721-balanceOf}." - }, - "constructor": { - "details": "Initializes the contract by setting a `name` and a `symbol` to the token collection." - }, - "getApproved(uint256)": { - "details": "See {IERC721-getApproved}." - }, - "isApprovedForAll(address,address)": { - "details": "See {IERC721-isApprovedForAll}." - }, - "name()": { - "details": "See {IERC721Metadata-name}." - }, - "ownerOf(uint256)": { - "details": "See {IERC721-ownerOf}." - }, - "safeTransferFrom(address,address,uint256)": { - "details": "See {IERC721-safeTransferFrom}." - }, - "safeTransferFrom(address,address,uint256,bytes)": { - "details": "See {IERC721-safeTransferFrom}." - }, - "setApprovalForAll(address,bool)": { - "details": "See {IERC721-setApprovalForAll}." - }, - "supportsInterface(bytes4)": { - "details": "See {IERC165-supportsInterface}." - }, - "symbol()": { - "details": "See {IERC721Metadata-symbol}." - }, - "tokenURI(uint256)": { - "details": "See {IERC721Metadata-tokenURI}." - }, - "transferFrom(address,address,uint256)": { - "details": "See {IERC721-transferFrom}." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/ERC721URIStorage.json b/src/abis/ERC721URIStorage.json deleted file mode 100644 index a22565f..0000000 --- a/src/abis/ERC721URIStorage.json +++ /dev/null @@ -1,3601 +0,0 @@ -{ - "contractName": "ERC721URIStorage", - "abi": [ - { - "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": "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": [ - { - "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": "getApproved", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "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": "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": "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": "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": "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": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "tokenURI", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\":\"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\":[{\"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\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"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\":\"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\":\"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\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"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\"}],\"devdoc\":{\"details\":\"ERC721 token with storage based token URI management.\",\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"See {IERC721-approve}.\"},\"balanceOf(address)\":{\"details\":\"See {IERC721-balanceOf}.\"},\"getApproved(uint256)\":{\"details\":\"See {IERC721-getApproved}.\"},\"isApprovedForAll(address,address)\":{\"details\":\"See {IERC721-isApprovedForAll}.\"},\"name()\":{\"details\":\"See {IERC721Metadata-name}.\"},\"ownerOf(uint256)\":{\"details\":\"See {IERC721-ownerOf}.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"See {IERC721-safeTransferFrom}.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"See {IERC721-setApprovalForAll}.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"symbol()\":{\"details\":\"See {IERC721Metadata-symbol}.\"},\"tokenURI(uint256)\":{\"details\":\"See {IERC721Metadata-tokenURI}.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC721-transferFrom}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol\":\"ERC721URIStorage\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x921f012325281f7d81e29c53a13824cf6c2c5d77232065d0d4f3f912e97af6ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7dbcedc364fce0ab5e54d21d4cbd91a97959f52c0674cf5c36a314bb58308f62\",\"dweb:/ipfs/QmfYpqHKtu3bSQ9FGvLwzdxRNykStpVPtoLNTaM1KBKj6E\"]},\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x0d4de01fe5360c38b4ad2b0822a12722958428f5138a7ff47c1720eb6fa52bba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77724cecdfba8814632ab58737c2b0f2d4ad2d532bc614aee559b5593c1152f0\",\"dweb:/ipfs/QmUcE6gXyv7CQh4sUdcDABYKGTovTe1zLMZSEq95nkc3ph\"]},\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol\":{\"keccak256\":\"0x1cbe42915bc66227970fe99bc0f783eb1de30f2b48f984af01ad45edb9658698\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2baa08eb67d9da46e6c4c049f17b7684a1c68c5268d0f466cfa0eb23ce2bf9b0\",\"dweb:/ipfs/Qmdnj8zj4PfErB2HM2eKmDt7FrqrhggsZ6Qd8MpD593tgj\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/Address.sol\":{\"keccak256\":\"0x2ccf9d2313a313d41a791505f2b5abfdc62191b5d4334f7f7a82691c088a1c87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a57d0854b2fdce6ebff933a48dca2445643d1eccfc27f00292e937f26c6a58\",\"dweb:/ipfs/QmW45rZooS9TqR4YXUbjRbtf2Bpb5ouSarBvfW1LdGprvV\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x32c202bd28995dd20c4347b7c6467a6d3241c74c8ad3edcbb610cd9205916c45\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8179c356adb19e70d6b31a1eedc8c5c7f0c00e669e2540f4099e3844c6074d30\",\"dweb:/ipfs/QmWFbivarEobbqhS1go64ootVuHfVohBseerYy9FTEd1W2\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/ERC721URIStorage.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../ERC721.sol\";\n\n/**\n * @dev ERC721 token with storage based token URI management.\n */\nabstract contract ERC721URIStorage is ERC721 {\n using Strings for uint256;\n\n // Optional mapping for token URIs\n mapping(uint256 => string) private _tokenURIs;\n\n /**\n * @dev See {IERC721Metadata-tokenURI}.\n */\n function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {\n require(_exists(tokenId), \"ERC721URIStorage: URI query for nonexistent token\");\n\n string memory _tokenURI = _tokenURIs[tokenId];\n string memory base = _baseURI();\n\n // If there is no base URI, return the token URI.\n if (bytes(base).length == 0) {\n return _tokenURI;\n }\n // If both are set, concatenate the baseURI and tokenURI (via abi.encodePacked).\n if (bytes(_tokenURI).length > 0) {\n return string(abi.encodePacked(base, _tokenURI));\n }\n\n return super.tokenURI(tokenId);\n }\n\n /**\n * @dev Sets `_tokenURI` as the tokenURI of `tokenId`.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function _setTokenURI(uint256 tokenId, string memory _tokenURI) internal virtual {\n require(_exists(tokenId), \"ERC721URIStorage: URI set of nonexistent token\");\n _tokenURIs[tokenId] = _tokenURI;\n }\n\n /**\n * @dev Destroys `tokenId`.\n * The approval is cleared when the token is burned.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n *\n * Emits a {Transfer} event.\n */\n function _burn(uint256 tokenId) internal virtual override {\n super._burn(tokenId);\n\n if (bytes(_tokenURIs[tokenId]).length != 0) {\n delete _tokenURIs[tokenId];\n }\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", - "exportedSymbols": { - "Address": [ - 1449 - ], - "Context": [ - 1471 - ], - "ERC165": [ - 1772 - ], - "ERC721": [ - 865 - ], - "ERC721URIStorage": [ - 1127 - ], - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ], - "IERC721Receiver": [ - 999 - ], - "Strings": [ - 1748 - ] - }, - "id": 1128, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1001, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "113:23:3" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", - "file": "../ERC721.sol", - "id": 1002, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1128, - "sourceUnit": 866, - "src": "138:23:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 1004, - "name": "ERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 865, - "src": "271:6:3" - }, - "id": 1005, - "nodeType": "InheritanceSpecifier", - "src": "271:6:3" - } - ], - "canonicalName": "ERC721URIStorage", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1003, - "nodeType": "StructuredDocumentation", - "src": "163:69:3", - "text": " @dev ERC721 token with storage based token URI management." - }, - "fullyImplemented": false, - "id": 1127, - "linearizedBaseContracts": [ - 1127, - 865, - 1154, - 981, - 1772, - 1784, - 1471 - ], - "name": "ERC721URIStorage", - "nameLocation": "251:16:3", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 1008, - "libraryName": { - "id": 1006, - "name": "Strings", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1748, - "src": "290:7:3" - }, - "nodeType": "UsingForDirective", - "src": "284:26:3", - "typeName": { - "id": 1007, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "302:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 1012, - "mutability": "mutable", - "name": "_tokenURIs", - "nameLocation": "390:10:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "355:45:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string)" - }, - "typeName": { - "id": 1011, - "keyType": { - "id": 1009, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "363:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "355:26:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string)" - }, - "valueType": { - "id": 1010, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "374:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - "visibility": "private" - }, - { - "baseFunctions": [ - 207 - ], - "body": { - "id": 1073, - "nodeType": "Block", - "src": "555:575:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1023, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "581:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1022, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "573:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1024, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "573:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524337323155524953746f726167653a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 1025, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "591:51:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a", - "typeString": "literal_string \"ERC721URIStorage: URI query for nonexistent token\"" - }, - "value": "ERC721URIStorage: URI query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a", - "typeString": "literal_string \"ERC721URIStorage: URI query for nonexistent token\"" - } - ], - "id": 1021, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "565:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "565:78:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1027, - "nodeType": "ExpressionStatement", - "src": "565:78:3" - }, - { - "assignments": [ - 1029 - ], - "declarations": [ - { - "constant": false, - "id": 1029, - "mutability": "mutable", - "name": "_tokenURI", - "nameLocation": "668:9:3", - "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "654:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1028, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "654:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1033, - "initialValue": { - "baseExpression": { - "id": 1030, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "680:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1032, - "indexExpression": { - "id": 1031, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "691:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "680:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "654:45:3" - }, - { - "assignments": [ - 1035 - ], - "declarations": [ - { - "constant": false, - "id": 1035, - "mutability": "mutable", - "name": "base", - "nameLocation": "723:4:3", - "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "709:18:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1034, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "709:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1038, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1036, - "name": "_baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "730:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", - "typeString": "function () view returns (string memory)" - } - }, - "id": 1037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "730:10:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "709:31:3" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1041, - "name": "base", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "819:4:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1040, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "813:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1039, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "813:5:3", - "typeDescriptions": {} - } - }, - "id": 1042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "813:11:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1043, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "813:18:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1044, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "835:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "813:23:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1049, - "nodeType": "IfStatement", - "src": "809:70:3", - "trueBody": { - "id": 1048, - "nodeType": "Block", - "src": "838:41:3", - "statements": [ - { - "expression": { - "id": 1046, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "859:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1047, - "nodeType": "Return", - "src": "852:16:3" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1052, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "987:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "981:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1050, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "981:5:3", - "typeDescriptions": {} - } - }, - "id": 1053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "981:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "981:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1055, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1007:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "981:27:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1067, - "nodeType": "IfStatement", - "src": "977:106:3", - "trueBody": { - "id": 1066, - "nodeType": "Block", - "src": "1010:73:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1061, - "name": "base", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "1055:4:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 1062, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "1061:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1059, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1038:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1060, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "1038:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1063, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1038:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1058, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1031:6:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1057, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1031:6:3", - "typeDescriptions": {} - } - }, - "id": 1064, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1031:41:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1065, - "nodeType": "Return", - "src": "1024:48:3" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 1070, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "1115:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1068, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1100:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721URIStorage_$1127_$", - "typeString": "type(contract super ERC721URIStorage)" - } - }, - "id": 1069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "tokenURI", - "nodeType": "MemberAccess", - "referencedDeclaration": 207, - "src": "1100:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_string_memory_ptr_$", - "typeString": "function (uint256) view returns (string memory)" - } - }, - "id": 1071, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1100:23:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1072, - "nodeType": "Return", - "src": "1093:30:3" - } - ] - }, - "documentation": { - "id": 1013, - "nodeType": "StructuredDocumentation", - "src": "407:55:3", - "text": " @dev See {IERC721Metadata-tokenURI}." - }, - "functionSelector": "c87b56dd", - "id": 1074, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "476:8:3", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1017, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "522:8:3" - }, - "parameters": { - "id": 1016, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1015, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "493:7:3", - "nodeType": "VariableDeclaration", - "scope": 1074, - "src": "485:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1014, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "485:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "484:17:3" - }, - "returnParameters": { - "id": 1020, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1019, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1074, - "src": "540:13:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1018, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "540:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "539:15:3" - }, - "scope": 1127, - "src": "467:663:3", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1095, - "nodeType": "Block", - "src": "1358:133:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1084, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1384:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1083, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "1376:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1376:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524337323155524953746f726167653a2055524920736574206f66206e6f6e6578697374656e7420746f6b656e", - "id": 1086, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1394:48:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4", - "typeString": "literal_string \"ERC721URIStorage: URI set of nonexistent token\"" - }, - "value": "ERC721URIStorage: URI set of nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4", - "typeString": "literal_string \"ERC721URIStorage: URI set of nonexistent token\"" - } - ], - "id": 1082, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1368:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1368:75:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1088, - "nodeType": "ExpressionStatement", - "src": "1368:75:3" - }, - { - "expression": { - "id": 1093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1089, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1453:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1091, - "indexExpression": { - "id": 1090, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1464:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1453:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1092, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1079, - "src": "1475:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1453:31:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1094, - "nodeType": "ExpressionStatement", - "src": "1453:31:3" - } - ] - }, - "documentation": { - "id": 1075, - "nodeType": "StructuredDocumentation", - "src": "1136:136:3", - "text": " @dev Sets `_tokenURI` as the tokenURI of `tokenId`.\n Requirements:\n - `tokenId` must exist." - }, - "id": 1096, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setTokenURI", - "nameLocation": "1286:12:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1080, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1077, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1307:7:3", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "1299:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1076, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1299:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1079, - "mutability": "mutable", - "name": "_tokenURI", - "nameLocation": "1330:9:3", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "1316:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1078, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1316:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1298:42:3" - }, - "returnParameters": { - "id": 1081, - "nodeType": "ParameterList", - "parameters": [], - "src": "1358:0:3" - }, - "scope": 1127, - "src": "1277:214:3", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "baseFunctions": [ - 649 - ], - "body": { - "id": 1125, - "nodeType": "Block", - "src": "1766:142:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1106, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1788:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1103, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1776:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721URIStorage_$1127_$", - "typeString": "type(contract super ERC721URIStorage)" - } - }, - "id": 1105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "_burn", - "nodeType": "MemberAccess", - "referencedDeclaration": 649, - "src": "1776:11:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256)" - } - }, - "id": 1107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1776:20:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1108, - "nodeType": "ExpressionStatement", - "src": "1776:20:3" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "baseExpression": { - "id": 1111, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1817:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1113, - "indexExpression": { - "id": 1112, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1828:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1817:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1110, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1811:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1109, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1811:5:3", - "typeDescriptions": {} - } - }, - "id": 1114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1811:26:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1115, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1811:33:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1116, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1848:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1811:38:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1124, - "nodeType": "IfStatement", - "src": "1807:95:3", - "trueBody": { - "id": 1123, - "nodeType": "Block", - "src": "1851:51:3", - "statements": [ - { - "expression": { - "id": 1121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1865:26:3", - "subExpression": { - "baseExpression": { - "id": 1118, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1872:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1120, - "indexExpression": { - "id": 1119, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1883:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1872:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1122, - "nodeType": "ExpressionStatement", - "src": "1865:26:3" - } - ] - } - } - ] - }, - "documentation": { - "id": 1097, - "nodeType": "StructuredDocumentation", - "src": "1497:206:3", - "text": " @dev Destroys `tokenId`.\n The approval is cleared when the token is burned.\n Requirements:\n - `tokenId` must exist.\n Emits a {Transfer} event." - }, - "id": 1126, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_burn", - "nameLocation": "1717:5:3", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1101, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1757:8:3" - }, - "parameters": { - "id": 1100, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1099, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1731:7:3", - "nodeType": "VariableDeclaration", - "scope": 1126, - "src": "1723:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1098, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1723:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1722:17:3" - }, - "returnParameters": { - "id": 1102, - "nodeType": "ParameterList", - "parameters": [], - "src": "1766:0:3" - }, - "scope": 1127, - "src": "1708:200:3", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1128, - "src": "233:1677:3", - "usedErrors": [] - } - ], - "src": "113:1798:3" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", - "exportedSymbols": { - "Address": [ - 1449 - ], - "Context": [ - 1471 - ], - "ERC165": [ - 1772 - ], - "ERC721": [ - 865 - ], - "ERC721URIStorage": [ - 1127 - ], - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ], - "IERC721Receiver": [ - 999 - ], - "Strings": [ - 1748 - ] - }, - "id": 1128, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1001, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "113:23:3" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/ERC721.sol", - "file": "../ERC721.sol", - "id": 1002, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1128, - "sourceUnit": 866, - "src": "138:23:3", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": true, - "baseContracts": [ - { - "baseName": { - "id": 1004, - "name": "ERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 865, - "src": "271:6:3" - }, - "id": 1005, - "nodeType": "InheritanceSpecifier", - "src": "271:6:3" - } - ], - "canonicalName": "ERC721URIStorage", - "contractDependencies": [], - "contractKind": "contract", - "documentation": { - "id": 1003, - "nodeType": "StructuredDocumentation", - "src": "163:69:3", - "text": " @dev ERC721 token with storage based token URI management." - }, - "fullyImplemented": false, - "id": 1127, - "linearizedBaseContracts": [ - 1127, - 865, - 1154, - 981, - 1772, - 1784, - 1471 - ], - "name": "ERC721URIStorage", - "nameLocation": "251:16:3", - "nodeType": "ContractDefinition", - "nodes": [ - { - "global": false, - "id": 1008, - "libraryName": { - "id": 1006, - "name": "Strings", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1748, - "src": "290:7:3" - }, - "nodeType": "UsingForDirective", - "src": "284:26:3", - "typeName": { - "id": 1007, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "302:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - { - "constant": false, - "id": 1012, - "mutability": "mutable", - "name": "_tokenURIs", - "nameLocation": "390:10:3", - "nodeType": "VariableDeclaration", - "scope": 1127, - "src": "355:45:3", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string)" - }, - "typeName": { - "id": 1011, - "keyType": { - "id": 1009, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "363:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Mapping", - "src": "355:26:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string)" - }, - "valueType": { - "id": 1010, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "374:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - } - }, - "visibility": "private" - }, - { - "baseFunctions": [ - 207 - ], - "body": { - "id": 1073, - "nodeType": "Block", - "src": "555:575:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1023, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "581:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1022, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "573:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1024, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "573:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524337323155524953746f726167653a2055524920717565727920666f72206e6f6e6578697374656e7420746f6b656e", - "id": 1025, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "591:51:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a", - "typeString": "literal_string \"ERC721URIStorage: URI query for nonexistent token\"" - }, - "value": "ERC721URIStorage: URI query for nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a", - "typeString": "literal_string \"ERC721URIStorage: URI query for nonexistent token\"" - } - ], - "id": 1021, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "565:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "565:78:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1027, - "nodeType": "ExpressionStatement", - "src": "565:78:3" - }, - { - "assignments": [ - 1029 - ], - "declarations": [ - { - "constant": false, - "id": 1029, - "mutability": "mutable", - "name": "_tokenURI", - "nameLocation": "668:9:3", - "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "654:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1028, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "654:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1033, - "initialValue": { - "baseExpression": { - "id": 1030, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "680:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1032, - "indexExpression": { - "id": 1031, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "691:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "680:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "654:45:3" - }, - { - "assignments": [ - 1035 - ], - "declarations": [ - { - "constant": false, - "id": 1035, - "mutability": "mutable", - "name": "base", - "nameLocation": "723:4:3", - "nodeType": "VariableDeclaration", - "scope": 1073, - "src": "709:18:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1034, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "709:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "id": 1038, - "initialValue": { - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 1036, - "name": "_baseURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 216, - "src": "730:8:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$__$returns$_t_string_memory_ptr_$", - "typeString": "function () view returns (string memory)" - } - }, - "id": 1037, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "730:10:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "709:31:3" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1045, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1041, - "name": "base", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "819:4:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1040, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "813:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1039, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "813:5:3", - "typeDescriptions": {} - } - }, - "id": 1042, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "813:11:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1043, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "813:18:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1044, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "835:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "813:23:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1049, - "nodeType": "IfStatement", - "src": "809:70:3", - "trueBody": { - "id": 1048, - "nodeType": "Block", - "src": "838:41:3", - "statements": [ - { - "expression": { - "id": 1046, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "859:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1047, - "nodeType": "Return", - "src": "852:16:3" - } - ] - } - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1056, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "id": 1052, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "987:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 1051, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "981:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1050, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "981:5:3", - "typeDescriptions": {} - } - }, - "id": 1053, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "981:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1054, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "981:23:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "30", - "id": 1055, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1007:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "981:27:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1067, - "nodeType": "IfStatement", - "src": "977:106:3", - "trueBody": { - "id": 1066, - "nodeType": "Block", - "src": "1010:73:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1061, - "name": "base", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "1055:4:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "id": 1062, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1029, - "src": "1061:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "expression": { - "id": 1059, - "name": "abi", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967295, - "src": "1038:3:3", - "typeDescriptions": { - "typeIdentifier": "t_magic_abi", - "typeString": "abi" - } - }, - "id": 1060, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "memberName": "encodePacked", - "nodeType": "MemberAccess", - "src": "1038:16:3", - "typeDescriptions": { - "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", - "typeString": "function () pure returns (bytes memory)" - } - }, - "id": 1063, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1038:33:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1058, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1031:6:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1057, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1031:6:3", - "typeDescriptions": {} - } - }, - "id": 1064, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1031:41:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1065, - "nodeType": "Return", - "src": "1024:48:3" - } - ] - } - }, - { - "expression": { - "arguments": [ - { - "id": 1070, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1015, - "src": "1115:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1068, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1100:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721URIStorage_$1127_$", - "typeString": "type(contract super ERC721URIStorage)" - } - }, - "id": 1069, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "tokenURI", - "nodeType": "MemberAccess", - "referencedDeclaration": 207, - "src": "1100:14:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_string_memory_ptr_$", - "typeString": "function (uint256) view returns (string memory)" - } - }, - "id": 1071, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1100:23:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1020, - "id": 1072, - "nodeType": "Return", - "src": "1093:30:3" - } - ] - }, - "documentation": { - "id": 1013, - "nodeType": "StructuredDocumentation", - "src": "407:55:3", - "text": " @dev See {IERC721Metadata-tokenURI}." - }, - "functionSelector": "c87b56dd", - "id": 1074, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "476:8:3", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1017, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "522:8:3" - }, - "parameters": { - "id": 1016, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1015, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "493:7:3", - "nodeType": "VariableDeclaration", - "scope": 1074, - "src": "485:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1014, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "485:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "484:17:3" - }, - "returnParameters": { - "id": 1020, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1019, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1074, - "src": "540:13:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1018, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "540:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "539:15:3" - }, - "scope": 1127, - "src": "467:663:3", - "stateMutability": "view", - "virtual": true, - "visibility": "public" - }, - { - "body": { - "id": 1095, - "nodeType": "Block", - "src": "1358:133:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "id": 1084, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1384:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1083, - "name": "_exists", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 438, - "src": "1376:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", - "typeString": "function (uint256) view returns (bool)" - } - }, - "id": 1085, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1376:16:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "45524337323155524953746f726167653a2055524920736574206f66206e6f6e6578697374656e7420746f6b656e", - "id": 1086, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1394:48:3", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4", - "typeString": "literal_string \"ERC721URIStorage: URI set of nonexistent token\"" - }, - "value": "ERC721URIStorage: URI set of nonexistent token" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4", - "typeString": "literal_string \"ERC721URIStorage: URI set of nonexistent token\"" - } - ], - "id": 1082, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1368:7:3", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1087, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1368:75:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1088, - "nodeType": "ExpressionStatement", - "src": "1368:75:3" - }, - { - "expression": { - "id": 1093, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1089, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1453:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1091, - "indexExpression": { - "id": 1090, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1077, - "src": "1464:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1453:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1092, - "name": "_tokenURI", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1079, - "src": "1475:9:3", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1453:31:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1094, - "nodeType": "ExpressionStatement", - "src": "1453:31:3" - } - ] - }, - "documentation": { - "id": 1075, - "nodeType": "StructuredDocumentation", - "src": "1136:136:3", - "text": " @dev Sets `_tokenURI` as the tokenURI of `tokenId`.\n Requirements:\n - `tokenId` must exist." - }, - "id": 1096, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_setTokenURI", - "nameLocation": "1286:12:3", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1080, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1077, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1307:7:3", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "1299:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1076, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1299:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1079, - "mutability": "mutable", - "name": "_tokenURI", - "nameLocation": "1330:9:3", - "nodeType": "VariableDeclaration", - "scope": 1096, - "src": "1316:23:3", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1078, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1316:6:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1298:42:3" - }, - "returnParameters": { - "id": 1081, - "nodeType": "ParameterList", - "parameters": [], - "src": "1358:0:3" - }, - "scope": 1127, - "src": "1277:214:3", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - }, - { - "baseFunctions": [ - 649 - ], - "body": { - "id": 1125, - "nodeType": "Block", - "src": "1766:142:3", - "statements": [ - { - "expression": { - "arguments": [ - { - "id": 1106, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1788:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1103, - "name": "super", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967271, - "src": "1776:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_super$_ERC721URIStorage_$1127_$", - "typeString": "type(contract super ERC721URIStorage)" - } - }, - "id": 1105, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "_burn", - "nodeType": "MemberAccess", - "referencedDeclaration": 649, - "src": "1776:11:3", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256)" - } - }, - "id": 1107, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1776:20:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1108, - "nodeType": "ExpressionStatement", - "src": "1776:20:3" - }, - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1117, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "arguments": [ - { - "baseExpression": { - "id": 1111, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1817:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1113, - "indexExpression": { - "id": 1112, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1828:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1817:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 1110, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1811:5:3", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": { - "id": 1109, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1811:5:3", - "typeDescriptions": {} - } - }, - "id": 1114, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1811:26:3", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - }, - "id": 1115, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "src": "1811:33:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1116, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1848:1:3", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1811:38:3", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1124, - "nodeType": "IfStatement", - "src": "1807:95:3", - "trueBody": { - "id": 1123, - "nodeType": "Block", - "src": "1851:51:3", - "statements": [ - { - "expression": { - "id": 1121, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "1865:26:3", - "subExpression": { - "baseExpression": { - "id": 1118, - "name": "_tokenURIs", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1012, - "src": "1872:10:3", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$", - "typeString": "mapping(uint256 => string storage ref)" - } - }, - "id": 1120, - "indexExpression": { - "id": 1119, - "name": "tokenId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "1883:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1872:19:3", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1122, - "nodeType": "ExpressionStatement", - "src": "1865:26:3" - } - ] - } - } - ] - }, - "documentation": { - "id": 1097, - "nodeType": "StructuredDocumentation", - "src": "1497:206:3", - "text": " @dev Destroys `tokenId`.\n The approval is cleared when the token is burned.\n Requirements:\n - `tokenId` must exist.\n Emits a {Transfer} event." - }, - "id": 1126, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "_burn", - "nameLocation": "1717:5:3", - "nodeType": "FunctionDefinition", - "overrides": { - "id": 1101, - "nodeType": "OverrideSpecifier", - "overrides": [], - "src": "1757:8:3" - }, - "parameters": { - "id": 1100, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1099, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1731:7:3", - "nodeType": "VariableDeclaration", - "scope": 1126, - "src": "1723:15:3", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1098, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1723:7:3", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1722:17:3" - }, - "returnParameters": { - "id": 1102, - "nodeType": "ParameterList", - "parameters": [], - "src": "1766:0:3" - }, - "scope": 1127, - "src": "1708:200:3", - "stateMutability": "nonpayable", - "virtual": true, - "visibility": "internal" - } - ], - "scope": 1128, - "src": "233:1677:3", - "usedErrors": [] - } - ], - "src": "113:1798:3" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.996Z", - "devdoc": { - "details": "ERC721 token with storage based token URI management.", - "kind": "dev", - "methods": { - "approve(address,uint256)": { - "details": "See {IERC721-approve}." - }, - "balanceOf(address)": { - "details": "See {IERC721-balanceOf}." - }, - "getApproved(uint256)": { - "details": "See {IERC721-getApproved}." - }, - "isApprovedForAll(address,address)": { - "details": "See {IERC721-isApprovedForAll}." - }, - "name()": { - "details": "See {IERC721Metadata-name}." - }, - "ownerOf(uint256)": { - "details": "See {IERC721-ownerOf}." - }, - "safeTransferFrom(address,address,uint256)": { - "details": "See {IERC721-safeTransferFrom}." - }, - "safeTransferFrom(address,address,uint256,bytes)": { - "details": "See {IERC721-safeTransferFrom}." - }, - "setApprovalForAll(address,bool)": { - "details": "See {IERC721-setApprovalForAll}." - }, - "supportsInterface(bytes4)": { - "details": "See {IERC165-supportsInterface}." - }, - "symbol()": { - "details": "See {IERC721Metadata-symbol}." - }, - "tokenURI(uint256)": { - "details": "See {IERC721Metadata-tokenURI}." - }, - "transferFrom(address,address,uint256)": { - "details": "See {IERC721-transferFrom}." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/IERC165.json b/src/abis/IERC165.json deleted file mode 100644 index d2a6cf6..0000000 --- a/src/abis/IERC165.json +++ /dev/null @@ -1,336 +0,0 @@ -{ - "contractName": "IERC165", - "abi": [ - { - "inputs": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC165 standard, as defined in the https://eips.ethereum.org/EIPS/eip-165[EIP]. Implementers can declare support of contract interfaces, which can then be queried by others ({ERC165Checker}). For an implementation, see {ERC165}.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":\"IERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev Interface of the ERC165 standard, as defined in the\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\n *\n * Implementers can declare support of contract interfaces, which can then be\n * queried by others ({ERC165Checker}).\n *\n * For an implementation, see {ERC165}.\n */\ninterface IERC165 {\n /**\n * @dev Returns true if this contract implements the interface defined by\n * `interfaceId`. See the corresponding\n * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n * to learn more about how these ids are created.\n *\n * This function call must use less than 30 000 gas.\n */\n function supportsInterface(bytes4 interfaceId) external view returns (bool);\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ] - }, - "id": 1785, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1774, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "100:23:10" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC165", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1775, - "nodeType": "StructuredDocumentation", - "src": "125:279:10", - "text": " @dev Interface of the ERC165 standard, as defined in the\n https://eips.ethereum.org/EIPS/eip-165[EIP].\n Implementers can declare support of contract interfaces, which can then be\n queried by others ({ERC165Checker}).\n For an implementation, see {ERC165}." - }, - "fullyImplemented": false, - "id": 1784, - "linearizedBaseContracts": [ - 1784 - ], - "name": "IERC165", - "nameLocation": "415:7:10", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 1776, - "nodeType": "StructuredDocumentation", - "src": "429:340:10", - "text": " @dev Returns true if this contract implements the interface defined by\n `interfaceId`. See the corresponding\n https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n to learn more about how these ids are created.\n This function call must use less than 30 000 gas." - }, - "functionSelector": "01ffc9a7", - "id": 1783, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "783:17:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1779, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1778, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "808:11:10", - "nodeType": "VariableDeclaration", - "scope": 1783, - "src": "801:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1777, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "801:6:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "800:20:10" - }, - "returnParameters": { - "id": 1782, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1781, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1783, - "src": "844:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1780, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "844:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "843:6:10" - }, - "scope": 1784, - "src": "774:76:10", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1785, - "src": "405:447:10", - "usedErrors": [] - } - ], - "src": "100:753:10" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ] - }, - "id": 1785, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1774, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "100:23:10" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC165", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1775, - "nodeType": "StructuredDocumentation", - "src": "125:279:10", - "text": " @dev Interface of the ERC165 standard, as defined in the\n https://eips.ethereum.org/EIPS/eip-165[EIP].\n Implementers can declare support of contract interfaces, which can then be\n queried by others ({ERC165Checker}).\n For an implementation, see {ERC165}." - }, - "fullyImplemented": false, - "id": 1784, - "linearizedBaseContracts": [ - 1784 - ], - "name": "IERC165", - "nameLocation": "415:7:10", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 1776, - "nodeType": "StructuredDocumentation", - "src": "429:340:10", - "text": " @dev Returns true if this contract implements the interface defined by\n `interfaceId`. See the corresponding\n https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n to learn more about how these ids are created.\n This function call must use less than 30 000 gas." - }, - "functionSelector": "01ffc9a7", - "id": 1783, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "supportsInterface", - "nameLocation": "783:17:10", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1779, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1778, - "mutability": "mutable", - "name": "interfaceId", - "nameLocation": "808:11:10", - "nodeType": "VariableDeclaration", - "scope": 1783, - "src": "801:18:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 1777, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "801:6:10", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "800:20:10" - }, - "returnParameters": { - "id": 1782, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1781, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1783, - "src": "844:4:10", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 1780, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "844:4:10", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "843:6:10" - }, - "scope": 1784, - "src": "774:76:10", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1785, - "src": "405:447:10", - "usedErrors": [] - } - ], - "src": "100:753:10" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:04.009Z", - "devdoc": { - "details": "Interface of the ERC165 standard, as defined in the https://eips.ethereum.org/EIPS/eip-165[EIP]. Implementers can declare support of contract interfaces, which can then be queried by others ({ERC165Checker}). For an implementation, see {ERC165}.", - "kind": "dev", - "methods": { - "supportsInterface(bytes4)": { - "details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/IERC721.json b/src/abis/IERC721.json deleted file mode 100644 index 950177b..0000000 --- a/src/abis/IERC721.json +++ /dev/null @@ -1,3056 +0,0 @@ -{ - "contractName": "IERC721", - "abi": [ - { - "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": "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": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "ownerOf", - "outputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "stateMutability": "view", - "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": "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": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "approve", - "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": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "getApproved", - "outputs": [ - { - "internalType": "address", - "name": "operator", - "type": "address" - } - ], - "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" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\":\"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\":[{\"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\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"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\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"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\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"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\"}],\"devdoc\":{\"details\":\"Required interface of an ERC721 compliant contract.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":\"IERC721\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x0d4de01fe5360c38b4ad2b0822a12722958428f5138a7ff47c1720eb6fa52bba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77724cecdfba8814632ab58737c2b0f2d4ad2d532bc614aee559b5593c1152f0\",\"dweb:/ipfs/QmUcE6gXyv7CQh4sUdcDABYKGTovTe1zLMZSEq95nkc3ph\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/IERC721.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../../utils/introspection/IERC165.sol\";\n\n/**\n * @dev Required interface of an ERC721 compliant contract.\n */\ninterface IERC721 is IERC165 {\n /**\n * @dev Emitted when `tokenId` token is transferred from `from` to `to`.\n */\n event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.\n */\n event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);\n\n /**\n * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\n */\n event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\n\n /**\n * @dev Returns the number of tokens in ``owner``'s account.\n */\n function balanceOf(address owner) external view returns (uint256 balance);\n\n /**\n * @dev Returns the owner of the `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function ownerOf(uint256 tokenId) external view returns (address owner);\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(\n address from,\n address to,\n uint256 tokenId,\n bytes calldata data\n ) external;\n\n /**\n * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n * are aware of the ERC721 protocol to prevent tokens from being forever locked.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must exist and be owned by `from`.\n * - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}.\n * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n *\n * Emits a {Transfer} event.\n */\n function safeTransferFrom(\n address from,\n address to,\n uint256 tokenId\n ) external;\n\n /**\n * @dev Transfers `tokenId` token from `from` to `to`.\n *\n * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.\n *\n * Requirements:\n *\n * - `from` cannot be the zero address.\n * - `to` cannot be the zero address.\n * - `tokenId` token must be owned by `from`.\n * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n *\n * Emits a {Transfer} event.\n */\n function transferFrom(\n address from,\n address to,\n uint256 tokenId\n ) external;\n\n /**\n * @dev Gives permission to `to` to transfer `tokenId` token to another account.\n * The approval is cleared when the token is transferred.\n *\n * Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n *\n * Requirements:\n *\n * - The caller must own the token or be an approved operator.\n * - `tokenId` must exist.\n *\n * Emits an {Approval} event.\n */\n function approve(address to, uint256 tokenId) external;\n\n /**\n * @dev Approve or remove `operator` as an operator for the caller.\n * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n *\n * Requirements:\n *\n * - The `operator` cannot be the caller.\n *\n * Emits an {ApprovalForAll} event.\n */\n function setApprovalForAll(address operator, bool _approved) external;\n\n /**\n * @dev Returns the account approved for `tokenId` token.\n *\n * Requirements:\n *\n * - `tokenId` must exist.\n */\n function getApproved(uint256 tokenId) external view returns (address operator);\n\n /**\n * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n *\n * See {setApprovalForAll}\n */\n function isApprovedForAll(address owner, address operator) external view returns (bool);\n}\n", - "sourcePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ] - }, - "id": 982, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 867, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "108:23:1" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "file": "../../utils/introspection/IERC165.sol", - "id": 868, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 982, - "sourceUnit": 1785, - "src": "133:47:1", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 870, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "271:7:1" - }, - "id": 871, - "nodeType": "InheritanceSpecifier", - "src": "271:7:1" - } - ], - "canonicalName": "IERC721", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 869, - "nodeType": "StructuredDocumentation", - "src": "182:67:1", - "text": " @dev Required interface of an ERC721 compliant contract." - }, - "fullyImplemented": false, - "id": 981, - "linearizedBaseContracts": [ - 981, - 1784 - ], - "name": "IERC721", - "nameLocation": "260:7:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": { - "id": 872, - "nodeType": "StructuredDocumentation", - "src": "285:88:1", - "text": " @dev Emitted when `tokenId` token is transferred from `from` to `to`." - }, - "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "id": 880, - "name": "Transfer", - "nameLocation": "384:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 879, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 874, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "409:4:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "393:20:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 873, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "393:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 876, - "indexed": true, - "mutability": "mutable", - "name": "to", - "nameLocation": "431:2:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "415:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 875, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "415:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 878, - "indexed": true, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "451:7:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "435:23:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 877, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "435:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "392:67:1" - }, - "src": "378:82:1" - }, - { - "anonymous": false, - "documentation": { - "id": 881, - "nodeType": "StructuredDocumentation", - "src": "466:94:1", - "text": " @dev Emitted when `owner` enables `approved` to manage the `tokenId` token." - }, - "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "id": 889, - "name": "Approval", - "nameLocation": "571:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 883, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "596:5:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "580:21:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 882, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "580:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 885, - "indexed": true, - "mutability": "mutable", - "name": "approved", - "nameLocation": "619:8:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "603:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 884, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "603:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 887, - "indexed": true, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "645:7:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "629:23:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 886, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "629:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "579:74:1" - }, - "src": "565:89:1" - }, - { - "anonymous": false, - "documentation": { - "id": 890, - "nodeType": "StructuredDocumentation", - "src": "660:117:1", - "text": " @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets." - }, - "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", - "id": 898, - "name": "ApprovalForAll", - "nameLocation": "788:14:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 897, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 892, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "819:5:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "803:21:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "803:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 894, - "indexed": true, - "mutability": "mutable", - "name": "operator", - "nameLocation": "842:8:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "826:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 893, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "826:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 896, - "indexed": false, - "mutability": "mutable", - "name": "approved", - "nameLocation": "857:8:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "852:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 895, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "852:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "802:64:1" - }, - "src": "782:85:1" - }, - { - "documentation": { - "id": 899, - "nodeType": "StructuredDocumentation", - "src": "873:76:1", - "text": " @dev Returns the number of tokens in ``owner``'s account." - }, - "functionSelector": "70a08231", - "id": 906, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "963:9:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 902, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 901, - "mutability": "mutable", - "name": "owner", - "nameLocation": "981:5:1", - "nodeType": "VariableDeclaration", - "scope": 906, - "src": "973:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 900, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "973:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "972:15:1" - }, - "returnParameters": { - "id": 905, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 904, - "mutability": "mutable", - "name": "balance", - "nameLocation": "1019:7:1", - "nodeType": "VariableDeclaration", - "scope": 906, - "src": "1011:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 903, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1011:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1010:17:1" - }, - "scope": 981, - "src": "954:74:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 907, - "nodeType": "StructuredDocumentation", - "src": "1034:131:1", - "text": " @dev Returns the owner of the `tokenId` token.\n Requirements:\n - `tokenId` must exist." - }, - "functionSelector": "6352211e", - "id": 914, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "ownerOf", - "nameLocation": "1179:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 910, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 909, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1195:7:1", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "1187:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 908, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1187:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1186:17:1" - }, - "returnParameters": { - "id": 913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 912, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1235:5:1", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "1227:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 911, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1227:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1226:15:1" - }, - "scope": 981, - "src": "1170:72:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 915, - "nodeType": "StructuredDocumentation", - "src": "1248:556:1", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "functionSelector": "b88d4fde", - "id": 926, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "1818:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 924, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 917, - "mutability": "mutable", - "name": "from", - "nameLocation": "1852:4:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1844:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 916, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1844:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 919, - "mutability": "mutable", - "name": "to", - "nameLocation": "1874:2:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1866:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 918, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1866:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 921, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1894:7:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1886:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 920, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1886:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 923, - "mutability": "mutable", - "name": "data", - "nameLocation": "1926:4:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1911:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 922, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1911:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1834:102:1" - }, - "returnParameters": { - "id": 925, - "nodeType": "ParameterList", - "parameters": [], - "src": "1945:0:1" - }, - "scope": 981, - "src": "1809:137:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 927, - "nodeType": "StructuredDocumentation", - "src": "1952:690:1", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "functionSelector": "42842e0e", - "id": 936, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "2656:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 934, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "mutability": "mutable", - "name": "from", - "nameLocation": "2690:4:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2682:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 928, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2682:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 931, - "mutability": "mutable", - "name": "to", - "nameLocation": "2712:2:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2704:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 930, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2704:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 933, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2732:7:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2724:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 932, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2724:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2672:73:1" - }, - "returnParameters": { - "id": 935, - "nodeType": "ParameterList", - "parameters": [], - "src": "2754:0:1" - }, - "scope": 981, - "src": "2647:108:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 937, - "nodeType": "StructuredDocumentation", - "src": "2761:504:1", - "text": " @dev Transfers `tokenId` token from `from` to `to`.\n WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n Emits a {Transfer} event." - }, - "functionSelector": "23b872dd", - "id": 946, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "3279:12:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 944, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 939, - "mutability": "mutable", - "name": "from", - "nameLocation": "3309:4:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3301:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 938, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3301:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 941, - "mutability": "mutable", - "name": "to", - "nameLocation": "3331:2:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3323:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 940, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3323:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 943, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3351:7:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3343:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 942, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3343:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3291:73:1" - }, - "returnParameters": { - "id": 945, - "nodeType": "ParameterList", - "parameters": [], - "src": "3373:0:1" - }, - "scope": 981, - "src": "3270:104:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 947, - "nodeType": "StructuredDocumentation", - "src": "3380:452:1", - "text": " @dev Gives permission to `to` to transfer `tokenId` token to another account.\n The approval is cleared when the token is transferred.\n Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n Requirements:\n - The caller must own the token or be an approved operator.\n - `tokenId` must exist.\n Emits an {Approval} event." - }, - "functionSelector": "095ea7b3", - "id": 954, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "3846:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 949, - "mutability": "mutable", - "name": "to", - "nameLocation": "3862:2:1", - "nodeType": "VariableDeclaration", - "scope": 954, - "src": "3854:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 948, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3854:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 951, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3874:7:1", - "nodeType": "VariableDeclaration", - "scope": 954, - "src": "3866:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 950, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3866:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3853:29:1" - }, - "returnParameters": { - "id": 953, - "nodeType": "ParameterList", - "parameters": [], - "src": "3891:0:1" - }, - "scope": 981, - "src": "3837:55:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 955, - "nodeType": "StructuredDocumentation", - "src": "3898:309:1", - "text": " @dev Approve or remove `operator` as an operator for the caller.\n Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n Requirements:\n - The `operator` cannot be the caller.\n Emits an {ApprovalForAll} event." - }, - "functionSelector": "a22cb465", - "id": 962, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setApprovalForAll", - "nameLocation": "4221:17:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 960, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 957, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4247:8:1", - "nodeType": "VariableDeclaration", - "scope": 962, - "src": "4239:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 956, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4239:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 959, - "mutability": "mutable", - "name": "_approved", - "nameLocation": "4262:9:1", - "nodeType": "VariableDeclaration", - "scope": 962, - "src": "4257:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 958, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4257:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4238:34:1" - }, - "returnParameters": { - "id": 961, - "nodeType": "ParameterList", - "parameters": [], - "src": "4281:0:1" - }, - "scope": 981, - "src": "4212:70:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 963, - "nodeType": "StructuredDocumentation", - "src": "4288:139:1", - "text": " @dev Returns the account approved for `tokenId` token.\n Requirements:\n - `tokenId` must exist." - }, - "functionSelector": "081812fc", - "id": 970, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getApproved", - "nameLocation": "4441:11:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 965, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4461:7:1", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "4453:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 964, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4453:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4452:17:1" - }, - "returnParameters": { - "id": 969, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 968, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4501:8:1", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "4493:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 967, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4493:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4492:18:1" - }, - "scope": 981, - "src": "4432:79:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 971, - "nodeType": "StructuredDocumentation", - "src": "4517:138:1", - "text": " @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n See {setApprovalForAll}" - }, - "functionSelector": "e985e9c5", - "id": 980, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isApprovedForAll", - "nameLocation": "4669:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 976, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 973, - "mutability": "mutable", - "name": "owner", - "nameLocation": "4694:5:1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4686:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 972, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4686:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 975, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4709:8:1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4701:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 974, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4701:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4685:33:1" - }, - "returnParameters": { - "id": 979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 978, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4742:4:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 977, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4742:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4741:6:1" - }, - "scope": 981, - "src": "4660:88:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 982, - "src": "250:4500:1", - "usedErrors": [] - } - ], - "src": "108:4643:1" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ] - }, - "id": 982, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 867, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "108:23:1" - }, - { - "absolutePath": "@openzeppelin/contracts/utils/introspection/IERC165.sol", - "file": "../../utils/introspection/IERC165.sol", - "id": 868, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 982, - "sourceUnit": 1785, - "src": "133:47:1", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 870, - "name": "IERC165", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1784, - "src": "271:7:1" - }, - "id": 871, - "nodeType": "InheritanceSpecifier", - "src": "271:7:1" - } - ], - "canonicalName": "IERC721", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 869, - "nodeType": "StructuredDocumentation", - "src": "182:67:1", - "text": " @dev Required interface of an ERC721 compliant contract." - }, - "fullyImplemented": false, - "id": 981, - "linearizedBaseContracts": [ - 981, - 1784 - ], - "name": "IERC721", - "nameLocation": "260:7:1", - "nodeType": "ContractDefinition", - "nodes": [ - { - "anonymous": false, - "documentation": { - "id": 872, - "nodeType": "StructuredDocumentation", - "src": "285:88:1", - "text": " @dev Emitted when `tokenId` token is transferred from `from` to `to`." - }, - "eventSelector": "ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", - "id": 880, - "name": "Transfer", - "nameLocation": "384:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 879, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 874, - "indexed": true, - "mutability": "mutable", - "name": "from", - "nameLocation": "409:4:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "393:20:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 873, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "393:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 876, - "indexed": true, - "mutability": "mutable", - "name": "to", - "nameLocation": "431:2:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "415:18:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 875, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "415:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 878, - "indexed": true, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "451:7:1", - "nodeType": "VariableDeclaration", - "scope": 880, - "src": "435:23:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 877, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "435:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "392:67:1" - }, - "src": "378:82:1" - }, - { - "anonymous": false, - "documentation": { - "id": 881, - "nodeType": "StructuredDocumentation", - "src": "466:94:1", - "text": " @dev Emitted when `owner` enables `approved` to manage the `tokenId` token." - }, - "eventSelector": "8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "id": 889, - "name": "Approval", - "nameLocation": "571:8:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 888, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 883, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "596:5:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "580:21:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 882, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "580:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 885, - "indexed": true, - "mutability": "mutable", - "name": "approved", - "nameLocation": "619:8:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "603:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 884, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "603:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 887, - "indexed": true, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "645:7:1", - "nodeType": "VariableDeclaration", - "scope": 889, - "src": "629:23:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 886, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "629:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "579:74:1" - }, - "src": "565:89:1" - }, - { - "anonymous": false, - "documentation": { - "id": 890, - "nodeType": "StructuredDocumentation", - "src": "660:117:1", - "text": " @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets." - }, - "eventSelector": "17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31", - "id": 898, - "name": "ApprovalForAll", - "nameLocation": "788:14:1", - "nodeType": "EventDefinition", - "parameters": { - "id": 897, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 892, - "indexed": true, - "mutability": "mutable", - "name": "owner", - "nameLocation": "819:5:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "803:21:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 891, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "803:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 894, - "indexed": true, - "mutability": "mutable", - "name": "operator", - "nameLocation": "842:8:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "826:24:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 893, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "826:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 896, - "indexed": false, - "mutability": "mutable", - "name": "approved", - "nameLocation": "857:8:1", - "nodeType": "VariableDeclaration", - "scope": 898, - "src": "852:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 895, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "852:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "802:64:1" - }, - "src": "782:85:1" - }, - { - "documentation": { - "id": 899, - "nodeType": "StructuredDocumentation", - "src": "873:76:1", - "text": " @dev Returns the number of tokens in ``owner``'s account." - }, - "functionSelector": "70a08231", - "id": 906, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "balanceOf", - "nameLocation": "963:9:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 902, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 901, - "mutability": "mutable", - "name": "owner", - "nameLocation": "981:5:1", - "nodeType": "VariableDeclaration", - "scope": 906, - "src": "973:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 900, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "973:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "972:15:1" - }, - "returnParameters": { - "id": 905, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 904, - "mutability": "mutable", - "name": "balance", - "nameLocation": "1019:7:1", - "nodeType": "VariableDeclaration", - "scope": 906, - "src": "1011:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 903, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1011:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1010:17:1" - }, - "scope": 981, - "src": "954:74:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 907, - "nodeType": "StructuredDocumentation", - "src": "1034:131:1", - "text": " @dev Returns the owner of the `tokenId` token.\n Requirements:\n - `tokenId` must exist." - }, - "functionSelector": "6352211e", - "id": 914, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "ownerOf", - "nameLocation": "1179:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 910, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 909, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1195:7:1", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "1187:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 908, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1187:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1186:17:1" - }, - "returnParameters": { - "id": 913, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 912, - "mutability": "mutable", - "name": "owner", - "nameLocation": "1235:5:1", - "nodeType": "VariableDeclaration", - "scope": 914, - "src": "1227:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 911, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1227:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "1226:15:1" - }, - "scope": 981, - "src": "1170:72:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 915, - "nodeType": "StructuredDocumentation", - "src": "1248:556:1", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "functionSelector": "b88d4fde", - "id": 926, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "1818:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 924, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 917, - "mutability": "mutable", - "name": "from", - "nameLocation": "1852:4:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1844:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 916, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1844:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 919, - "mutability": "mutable", - "name": "to", - "nameLocation": "1874:2:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1866:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 918, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1866:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 921, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "1894:7:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1886:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 920, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1886:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 923, - "mutability": "mutable", - "name": "data", - "nameLocation": "1926:4:1", - "nodeType": "VariableDeclaration", - "scope": 926, - "src": "1911:19:1", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 922, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1911:5:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "1834:102:1" - }, - "returnParameters": { - "id": 925, - "nodeType": "ParameterList", - "parameters": [], - "src": "1945:0:1" - }, - "scope": 981, - "src": "1809:137:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 927, - "nodeType": "StructuredDocumentation", - "src": "1952:690:1", - "text": " @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients\n are aware of the ERC721 protocol to prevent tokens from being forever locked.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must exist and be owned by `from`.\n - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}.\n - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.\n Emits a {Transfer} event." - }, - "functionSelector": "42842e0e", - "id": 936, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "safeTransferFrom", - "nameLocation": "2656:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 934, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 929, - "mutability": "mutable", - "name": "from", - "nameLocation": "2690:4:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2682:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 928, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2682:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 931, - "mutability": "mutable", - "name": "to", - "nameLocation": "2712:2:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2704:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 930, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2704:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 933, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "2732:7:1", - "nodeType": "VariableDeclaration", - "scope": 936, - "src": "2724:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 932, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2724:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "2672:73:1" - }, - "returnParameters": { - "id": 935, - "nodeType": "ParameterList", - "parameters": [], - "src": "2754:0:1" - }, - "scope": 981, - "src": "2647:108:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 937, - "nodeType": "StructuredDocumentation", - "src": "2761:504:1", - "text": " @dev Transfers `tokenId` token from `from` to `to`.\n WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `tokenId` token must be owned by `from`.\n - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.\n Emits a {Transfer} event." - }, - "functionSelector": "23b872dd", - "id": 946, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "transferFrom", - "nameLocation": "3279:12:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 944, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 939, - "mutability": "mutable", - "name": "from", - "nameLocation": "3309:4:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3301:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 938, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3301:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 941, - "mutability": "mutable", - "name": "to", - "nameLocation": "3331:2:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3323:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 940, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3323:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 943, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3351:7:1", - "nodeType": "VariableDeclaration", - "scope": 946, - "src": "3343:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 942, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3343:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3291:73:1" - }, - "returnParameters": { - "id": 945, - "nodeType": "ParameterList", - "parameters": [], - "src": "3373:0:1" - }, - "scope": 981, - "src": "3270:104:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 947, - "nodeType": "StructuredDocumentation", - "src": "3380:452:1", - "text": " @dev Gives permission to `to` to transfer `tokenId` token to another account.\n The approval is cleared when the token is transferred.\n Only a single account can be approved at a time, so approving the zero address clears previous approvals.\n Requirements:\n - The caller must own the token or be an approved operator.\n - `tokenId` must exist.\n Emits an {Approval} event." - }, - "functionSelector": "095ea7b3", - "id": 954, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "approve", - "nameLocation": "3846:7:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 952, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 949, - "mutability": "mutable", - "name": "to", - "nameLocation": "3862:2:1", - "nodeType": "VariableDeclaration", - "scope": 954, - "src": "3854:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 948, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3854:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 951, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "3874:7:1", - "nodeType": "VariableDeclaration", - "scope": 954, - "src": "3866:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 950, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3866:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "3853:29:1" - }, - "returnParameters": { - "id": 953, - "nodeType": "ParameterList", - "parameters": [], - "src": "3891:0:1" - }, - "scope": 981, - "src": "3837:55:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 955, - "nodeType": "StructuredDocumentation", - "src": "3898:309:1", - "text": " @dev Approve or remove `operator` as an operator for the caller.\n Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.\n Requirements:\n - The `operator` cannot be the caller.\n Emits an {ApprovalForAll} event." - }, - "functionSelector": "a22cb465", - "id": 962, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "setApprovalForAll", - "nameLocation": "4221:17:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 960, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 957, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4247:8:1", - "nodeType": "VariableDeclaration", - "scope": 962, - "src": "4239:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 956, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4239:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 959, - "mutability": "mutable", - "name": "_approved", - "nameLocation": "4262:9:1", - "nodeType": "VariableDeclaration", - "scope": 962, - "src": "4257:14:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 958, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4257:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4238:34:1" - }, - "returnParameters": { - "id": 961, - "nodeType": "ParameterList", - "parameters": [], - "src": "4281:0:1" - }, - "scope": 981, - "src": "4212:70:1", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 963, - "nodeType": "StructuredDocumentation", - "src": "4288:139:1", - "text": " @dev Returns the account approved for `tokenId` token.\n Requirements:\n - `tokenId` must exist." - }, - "functionSelector": "081812fc", - "id": 970, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "getApproved", - "nameLocation": "4441:11:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 966, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 965, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "4461:7:1", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "4453:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 964, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "4453:7:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "4452:17:1" - }, - "returnParameters": { - "id": 969, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 968, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4501:8:1", - "nodeType": "VariableDeclaration", - "scope": 970, - "src": "4493:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 967, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4493:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4492:18:1" - }, - "scope": 981, - "src": "4432:79:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 971, - "nodeType": "StructuredDocumentation", - "src": "4517:138:1", - "text": " @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.\n See {setApprovalForAll}" - }, - "functionSelector": "e985e9c5", - "id": 980, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "isApprovedForAll", - "nameLocation": "4669:16:1", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 976, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 973, - "mutability": "mutable", - "name": "owner", - "nameLocation": "4694:5:1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4686:13:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 972, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4686:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 975, - "mutability": "mutable", - "name": "operator", - "nameLocation": "4709:8:1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4701:16:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 974, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "4701:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "4685:33:1" - }, - "returnParameters": { - "id": 979, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 978, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 980, - "src": "4742:4:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 977, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "4742:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "visibility": "internal" - } - ], - "src": "4741:6:1" - }, - "scope": 981, - "src": "4660:88:1", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 982, - "src": "250:4500:1", - "usedErrors": [] - } - ], - "src": "108:4643:1" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.994Z", - "devdoc": { - "details": "Required interface of an ERC721 compliant contract.", - "events": { - "Approval(address,address,uint256)": { - "details": "Emitted when `owner` enables `approved` to manage the `tokenId` token." - }, - "ApprovalForAll(address,address,bool)": { - "details": "Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets." - }, - "Transfer(address,address,uint256)": { - "details": "Emitted when `tokenId` token is transferred from `from` to `to`." - } - }, - "kind": "dev", - "methods": { - "approve(address,uint256)": { - "details": "Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event." - }, - "balanceOf(address)": { - "details": "Returns the number of tokens in ``owner``'s account." - }, - "getApproved(uint256)": { - "details": "Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist." - }, - "isApprovedForAll(address,address)": { - "details": "Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}" - }, - "ownerOf(uint256)": { - "details": "Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist." - }, - "safeTransferFrom(address,address,uint256)": { - "details": "Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event." - }, - "safeTransferFrom(address,address,uint256,bytes)": { - "details": "Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event." - }, - "setApprovalForAll(address,bool)": { - "details": "Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event." - }, - "supportsInterface(bytes4)": { - "details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas." - }, - "transferFrom(address,address,uint256)": { - "details": "Transfers `tokenId` token from `from` to `to`. WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event." - } - }, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/IERC721Metadata.json b/src/abis/IERC721Metadata.json deleted file mode 100644 index ca0c959..0000000 --- a/src/abis/IERC721Metadata.json +++ /dev/null @@ -1,994 +0,0 @@ -{ - "contractName": "IERC721Metadata", - "abi": [ - { - "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": "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": [ - { - "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": "balance", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "getApproved", - "outputs": [ - { - "internalType": "address", - "name": "operator", - "type": "address" - } - ], - "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": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "ownerOf", - "outputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - } - ], - "stateMutability": "view", - "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": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "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": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - } - ], - "name": "tokenURI", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\":\"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\":[{\"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\":\"balance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"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\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"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\":\"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\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"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\"}],\"devdoc\":{\"details\":\"See https://eips.ethereum.org/EIPS/eip-721\",\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"isApprovedForAll(address,address)\":{\"details\":\"Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}\"},\"name()\":{\"details\":\"Returns the token collection name.\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"symbol()\":{\"details\":\"Returns the token collection symbol.\"},\"tokenURI(uint256)\":{\"details\":\"Returns the Uniform Resource Identifier (URI) for `tokenId` token.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"title\":\"ERC-721 Non-Fungible Token Standard, optional metadata extension\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":\"IERC721Metadata\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0x0d4de01fe5360c38b4ad2b0822a12722958428f5138a7ff47c1720eb6fa52bba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://77724cecdfba8814632ab58737c2b0f2d4ad2d532bc614aee559b5593c1152f0\",\"dweb:/ipfs/QmUcE6gXyv7CQh4sUdcDABYKGTovTe1zLMZSEq95nkc3ph\"]},\"@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0x75b829ff2f26c14355d1cba20e16fe7b29ca58eb5fef665ede48bc0f9c6c74b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0a107160525724f9e1bbbab031defc2f298296dd9e331f16a6f7130cec32146\",\"dweb:/ipfs/QmemujxSd7gX8A9M8UwmNbz4Ms3U9FG9QfudUgxwvTmPWf\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/IERC721Metadata.sol)\n\npragma solidity ^0.8.0;\n\nimport \"../IERC721.sol\";\n\n/**\n * @title ERC-721 Non-Fungible Token Standard, optional metadata extension\n * @dev See https://eips.ethereum.org/EIPS/eip-721\n */\ninterface IERC721Metadata is IERC721 {\n /**\n * @dev Returns the token collection name.\n */\n function name() external view returns (string memory);\n\n /**\n * @dev Returns the token collection symbol.\n */\n function symbol() external view returns (string memory);\n\n /**\n * @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token.\n */\n function tokenURI(uint256 tokenId) external view returns (string memory);\n}\n", - "sourcePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ] - }, - "id": 1155, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1129, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "112:23:4" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "file": "../IERC721.sol", - "id": 1130, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1155, - "sourceUnit": 982, - "src": "137:24:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1132, - "name": "IERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 981, - "src": "326:7:4" - }, - "id": 1133, - "nodeType": "InheritanceSpecifier", - "src": "326:7:4" - } - ], - "canonicalName": "IERC721Metadata", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1131, - "nodeType": "StructuredDocumentation", - "src": "163:133:4", - "text": " @title ERC-721 Non-Fungible Token Standard, optional metadata extension\n @dev See https://eips.ethereum.org/EIPS/eip-721" - }, - "fullyImplemented": false, - "id": 1154, - "linearizedBaseContracts": [ - 1154, - 981, - 1784 - ], - "name": "IERC721Metadata", - "nameLocation": "307:15:4", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 1134, - "nodeType": "StructuredDocumentation", - "src": "340:58:4", - "text": " @dev Returns the token collection name." - }, - "functionSelector": "06fdde03", - "id": 1139, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "412:4:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "416:2:4" - }, - "returnParameters": { - "id": 1138, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1137, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "442:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1136, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "442:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "441:15:4" - }, - "scope": 1154, - "src": "403:54:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1140, - "nodeType": "StructuredDocumentation", - "src": "463:60:4", - "text": " @dev Returns the token collection symbol." - }, - "functionSelector": "95d89b41", - "id": 1145, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "537:6:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1141, - "nodeType": "ParameterList", - "parameters": [], - "src": "543:2:4" - }, - "returnParameters": { - "id": 1144, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1143, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1145, - "src": "569:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1142, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "569:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "568:15:4" - }, - "scope": 1154, - "src": "528:56:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1146, - "nodeType": "StructuredDocumentation", - "src": "590:90:4", - "text": " @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token." - }, - "functionSelector": "c87b56dd", - "id": 1153, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "694:8:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1149, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1148, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "711:7:4", - "nodeType": "VariableDeclaration", - "scope": 1153, - "src": "703:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1147, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "703:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "702:17:4" - }, - "returnParameters": { - "id": 1152, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1151, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1153, - "src": "743:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1150, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "743:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "742:15:4" - }, - "scope": 1154, - "src": "685:73:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1155, - "src": "297:463:4", - "usedErrors": [] - } - ], - "src": "112:649:4" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol", - "exportedSymbols": { - "IERC165": [ - 1784 - ], - "IERC721": [ - 981 - ], - "IERC721Metadata": [ - 1154 - ] - }, - "id": 1155, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1129, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "112:23:4" - }, - { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721.sol", - "file": "../IERC721.sol", - "id": 1130, - "nameLocation": "-1:-1:-1", - "nodeType": "ImportDirective", - "scope": 1155, - "sourceUnit": 982, - "src": "137:24:4", - "symbolAliases": [], - "unitAlias": "" - }, - { - "abstract": false, - "baseContracts": [ - { - "baseName": { - "id": 1132, - "name": "IERC721", - "nodeType": "IdentifierPath", - "referencedDeclaration": 981, - "src": "326:7:4" - }, - "id": 1133, - "nodeType": "InheritanceSpecifier", - "src": "326:7:4" - } - ], - "canonicalName": "IERC721Metadata", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 1131, - "nodeType": "StructuredDocumentation", - "src": "163:133:4", - "text": " @title ERC-721 Non-Fungible Token Standard, optional metadata extension\n @dev See https://eips.ethereum.org/EIPS/eip-721" - }, - "fullyImplemented": false, - "id": 1154, - "linearizedBaseContracts": [ - 1154, - 981, - 1784 - ], - "name": "IERC721Metadata", - "nameLocation": "307:15:4", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 1134, - "nodeType": "StructuredDocumentation", - "src": "340:58:4", - "text": " @dev Returns the token collection name." - }, - "functionSelector": "06fdde03", - "id": 1139, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "name", - "nameLocation": "412:4:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1135, - "nodeType": "ParameterList", - "parameters": [], - "src": "416:2:4" - }, - "returnParameters": { - "id": 1138, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1137, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1139, - "src": "442:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1136, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "442:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "441:15:4" - }, - "scope": 1154, - "src": "403:54:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1140, - "nodeType": "StructuredDocumentation", - "src": "463:60:4", - "text": " @dev Returns the token collection symbol." - }, - "functionSelector": "95d89b41", - "id": 1145, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "symbol", - "nameLocation": "537:6:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1141, - "nodeType": "ParameterList", - "parameters": [], - "src": "543:2:4" - }, - "returnParameters": { - "id": 1144, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1143, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1145, - "src": "569:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1142, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "569:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "568:15:4" - }, - "scope": 1154, - "src": "528:56:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - }, - { - "documentation": { - "id": 1146, - "nodeType": "StructuredDocumentation", - "src": "590:90:4", - "text": " @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token." - }, - "functionSelector": "c87b56dd", - "id": 1153, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "tokenURI", - "nameLocation": "694:8:4", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1149, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1148, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "711:7:4", - "nodeType": "VariableDeclaration", - "scope": 1153, - "src": "703:15:4", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1147, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "703:7:4", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "702:17:4" - }, - "returnParameters": { - "id": 1152, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1151, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1153, - "src": "743:13:4", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1150, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "743:6:4", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "742:15:4" - }, - "scope": 1154, - "src": "685:73:4", - "stateMutability": "view", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1155, - "src": "297:463:4", - "usedErrors": [] - } - ], - "src": "112:649:4" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.997Z", - "devdoc": { - "details": "See https://eips.ethereum.org/EIPS/eip-721", - "kind": "dev", - "methods": { - "approve(address,uint256)": { - "details": "Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event." - }, - "balanceOf(address)": { - "details": "Returns the number of tokens in ``owner``'s account." - }, - "getApproved(uint256)": { - "details": "Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist." - }, - "isApprovedForAll(address,address)": { - "details": "Returns if the `operator` is allowed to manage all of the assets of `owner`. See {setApprovalForAll}" - }, - "name()": { - "details": "Returns the token collection name." - }, - "ownerOf(uint256)": { - "details": "Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist." - }, - "safeTransferFrom(address,address,uint256)": { - "details": "Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event." - }, - "safeTransferFrom(address,address,uint256,bytes)": { - "details": "Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event." - }, - "setApprovalForAll(address,bool)": { - "details": "Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the caller. Emits an {ApprovalForAll} event." - }, - "supportsInterface(bytes4)": { - "details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas." - }, - "symbol()": { - "details": "Returns the token collection symbol." - }, - "tokenURI(uint256)": { - "details": "Returns the Uniform Resource Identifier (URI) for `tokenId` token." - }, - "transferFrom(address,address,uint256)": { - "details": "Transfers `tokenId` token from `from` to `to`. WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event." - } - }, - "title": "ERC-721 Non-Fungible Token Standard, optional metadata extension", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/IERC721Receiver.json b/src/abis/IERC721Receiver.json deleted file mode 100644 index 058f82e..0000000 --- a/src/abis/IERC721Receiver.json +++ /dev/null @@ -1,518 +0,0 @@ -{ - "contractName": "IERC721Receiver", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "operator", - "type": "address" - }, - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "uint256", - "name": "tokenId", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "onERC721Received", - "outputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for any contract that wants to support safeTransfers from ERC721 asset contracts.\",\"kind\":\"dev\",\"methods\":{\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom} by `operator` from `from`, this function is called. It must return its Solidity selector to confirm the token transfer. If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted. The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\"}},\"title\":\"ERC721 token receiver interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":\"IERC721Receiver\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]}},\"version\":1}", - "bytecode": "0x", - "deployedBytecode": "0x", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "", - "deployedSourceMap": "", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/IERC721Receiver.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @title ERC721 token receiver interface\n * @dev Interface for any contract that wants to support safeTransfers\n * from ERC721 asset contracts.\n */\ninterface IERC721Receiver {\n /**\n * @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n * by `operator` from `from`, this function is called.\n *\n * It must return its Solidity selector to confirm the token transfer.\n * If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n *\n * The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\n */\n function onERC721Received(\n address operator,\n address from,\n uint256 tokenId,\n bytes calldata data\n ) external returns (bytes4);\n}\n", - "sourcePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", - "exportedSymbols": { - "IERC721Receiver": [ - 999 - ] - }, - "id": 1000, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 983, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "116:23:2" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC721Receiver", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 984, - "nodeType": "StructuredDocumentation", - "src": "141:152:2", - "text": " @title ERC721 token receiver interface\n @dev Interface for any contract that wants to support safeTransfers\n from ERC721 asset contracts." - }, - "fullyImplemented": false, - "id": 999, - "linearizedBaseContracts": [ - 999 - ], - "name": "IERC721Receiver", - "nameLocation": "304:15:2", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 985, - "nodeType": "StructuredDocumentation", - "src": "326:493:2", - "text": " @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n by `operator` from `from`, this function is called.\n It must return its Solidity selector to confirm the token transfer.\n If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`." - }, - "functionSelector": "150b7a02", - "id": 998, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "onERC721Received", - "nameLocation": "833:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 994, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 987, - "mutability": "mutable", - "name": "operator", - "nameLocation": "867:8:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "859:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 986, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "859:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 989, - "mutability": "mutable", - "name": "from", - "nameLocation": "893:4:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "885:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 988, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "885:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 991, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "915:7:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "907:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 990, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "907:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 993, - "mutability": "mutable", - "name": "data", - "nameLocation": "947:4:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "932:19:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 992, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "932:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "849:108:2" - }, - "returnParameters": { - "id": 997, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 996, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "976:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 995, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "976:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "975:8:2" - }, - "scope": 999, - "src": "824:160:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1000, - "src": "294:692:2", - "usedErrors": [] - } - ], - "src": "116:871:2" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol", - "exportedSymbols": { - "IERC721Receiver": [ - 999 - ] - }, - "id": 1000, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 983, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "116:23:2" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "IERC721Receiver", - "contractDependencies": [], - "contractKind": "interface", - "documentation": { - "id": 984, - "nodeType": "StructuredDocumentation", - "src": "141:152:2", - "text": " @title ERC721 token receiver interface\n @dev Interface for any contract that wants to support safeTransfers\n from ERC721 asset contracts." - }, - "fullyImplemented": false, - "id": 999, - "linearizedBaseContracts": [ - 999 - ], - "name": "IERC721Receiver", - "nameLocation": "304:15:2", - "nodeType": "ContractDefinition", - "nodes": [ - { - "documentation": { - "id": 985, - "nodeType": "StructuredDocumentation", - "src": "326:493:2", - "text": " @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n by `operator` from `from`, this function is called.\n It must return its Solidity selector to confirm the token transfer.\n If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`." - }, - "functionSelector": "150b7a02", - "id": 998, - "implemented": false, - "kind": "function", - "modifiers": [], - "name": "onERC721Received", - "nameLocation": "833:16:2", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 994, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 987, - "mutability": "mutable", - "name": "operator", - "nameLocation": "867:8:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "859:16:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 986, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "859:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 989, - "mutability": "mutable", - "name": "from", - "nameLocation": "893:4:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "885:12:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 988, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "885:7:2", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 991, - "mutability": "mutable", - "name": "tokenId", - "nameLocation": "915:7:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "907:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 990, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "907:7:2", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 993, - "mutability": "mutable", - "name": "data", - "nameLocation": "947:4:2", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "932:19:2", - "stateVariable": false, - "storageLocation": "calldata", - "typeDescriptions": { - "typeIdentifier": "t_bytes_calldata_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 992, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "932:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "src": "849:108:2" - }, - "returnParameters": { - "id": 997, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 996, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 998, - "src": "976:6:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - }, - "typeName": { - "id": 995, - "name": "bytes4", - "nodeType": "ElementaryTypeName", - "src": "976:6:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes4", - "typeString": "bytes4" - } - }, - "visibility": "internal" - } - ], - "src": "975:8:2" - }, - "scope": 999, - "src": "824:160:2", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "external" - } - ], - "scope": 1000, - "src": "294:692:2", - "usedErrors": [] - } - ], - "src": "116:871:2" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:03.995Z", - "devdoc": { - "details": "Interface for any contract that wants to support safeTransfers from ERC721 asset contracts.", - "kind": "dev", - "methods": { - "onERC721Received(address,address,uint256,bytes)": { - "details": "Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom} by `operator` from `from`, this function is called. It must return its Solidity selector to confirm the token transfer. If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted. The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`." - } - }, - "title": "ERC721 token receiver interface", - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/MetadevsContract.json b/src/abis/MetadevsContract.json index efa4221..fb7f702 100644 --- a/src/abis/MetadevsContract.json +++ b/src/abis/MetadevsContract.json @@ -377,12 +377,12 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:516:13", + "src": "0:516:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "35:152:13", + "src": "35:152:163", "statements": [ { "expression": { @@ -390,14 +390,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "52:1:13", + "src": "52:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "55:77:13", + "src": "55:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -405,13 +405,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "45:6:13" + "src": "45:6:163" }, "nodeType": "YulFunctionCall", - "src": "45:88:13" + "src": "45:88:163" }, "nodeType": "YulExpressionStatement", - "src": "45:88:13" + "src": "45:88:163" }, { "expression": { @@ -419,14 +419,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "149:1:13", + "src": "149:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "152:4:13", + "src": "152:4:163", "type": "", "value": "0x22" } @@ -434,13 +434,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "142:6:13" + "src": "142:6:163" }, "nodeType": "YulFunctionCall", - "src": "142:15:13" + "src": "142:15:163" }, "nodeType": "YulExpressionStatement", - "src": "142:15:13" + "src": "142:15:163" }, { "expression": { @@ -448,14 +448,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "173:1:13", + "src": "173:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "176:4:13", + "src": "176:4:163", "type": "", "value": "0x24" } @@ -463,39 +463,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "166:6:13" + "src": "166:6:163" }, "nodeType": "YulFunctionCall", - "src": "166:15:13" + "src": "166:15:163" }, "nodeType": "YulExpressionStatement", - "src": "166:15:13" + "src": "166:15:163" } ] }, "name": "panic_error_0x22", "nodeType": "YulFunctionDefinition", - "src": "7:180:13" + "src": "7:180:163" }, { "body": { "nodeType": "YulBlock", - "src": "244:269:13", + "src": "244:269:163", "statements": [ { "nodeType": "YulAssignment", - "src": "254:22:13", + "src": "254:22:163", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "268:4:13" + "src": "268:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "274:1:13", + "src": "274:1:163", "type": "", "value": "2" } @@ -503,33 +503,33 @@ "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "264:3:13" + "src": "264:3:163" }, "nodeType": "YulFunctionCall", - "src": "264:12:13" + "src": "264:12:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "254:6:13" + "src": "254:6:163" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "285:38:13", + "src": "285:38:163", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "315:4:13" + "src": "315:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "321:1:13", + "src": "321:1:163", "type": "", "value": "1" } @@ -537,16 +537,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "311:3:13" + "src": "311:3:163" }, "nodeType": "YulFunctionCall", - "src": "311:12:13" + "src": "311:12:163" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "289:18:13", + "src": "289:18:163", "type": "" } ] @@ -554,22 +554,22 @@ { "body": { "nodeType": "YulBlock", - "src": "362:51:13", + "src": "362:51:163", "statements": [ { "nodeType": "YulAssignment", - "src": "376:27:13", + "src": "376:27:163", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "390:6:13" + "src": "390:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "398:4:13", + "src": "398:4:163", "type": "", "value": "0x7f" } @@ -577,16 +577,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "386:3:13" + "src": "386:3:163" }, "nodeType": "YulFunctionCall", - "src": "386:17:13" + "src": "386:17:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "376:6:13" + "src": "376:6:163" } ] } @@ -597,24 +597,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "342:18:13" + "src": "342:18:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "335:6:13" + "src": "335:6:163" }, "nodeType": "YulFunctionCall", - "src": "335:26:13" + "src": "335:26:163" }, "nodeType": "YulIf", - "src": "332:81:13" + "src": "332:81:163" }, { "body": { "nodeType": "YulBlock", - "src": "465:42:13", + "src": "465:42:163", "statements": [ { "expression": { @@ -622,13 +622,13 @@ "functionName": { "name": "panic_error_0x22", "nodeType": "YulIdentifier", - "src": "479:16:13" + "src": "479:16:163" }, "nodeType": "YulFunctionCall", - "src": "479:18:13" + "src": "479:18:163" }, "nodeType": "YulExpressionStatement", - "src": "479:18:13" + "src": "479:18:163" } ] }, @@ -637,19 +637,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "429:18:13" + "src": "429:18:163" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "452:6:13" + "src": "452:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "460:2:13", + "src": "460:2:163", "type": "", "value": "32" } @@ -657,22 +657,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "449:2:13" + "src": "449:2:163" }, "nodeType": "YulFunctionCall", - "src": "449:14:13" + "src": "449:14:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "426:2:13" + "src": "426:2:163" }, "nodeType": "YulFunctionCall", - "src": "426:38:13" + "src": "426:38:163" }, "nodeType": "YulIf", - "src": "423:84:13" + "src": "423:84:163" } ] }, @@ -682,7 +682,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "228:4:13", + "src": "228:4:163", "type": "" } ], @@ -690,16 +690,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "237:6:13", + "src": "237:6:163", "type": "" } ], - "src": "193:320:13" + "src": "193:320:163" } ] }, "contents": "{\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": 13, + "id": 163, "language": "Yul", "name": "#utility.yul" } @@ -708,22 +708,22 @@ { "ast": { "nodeType": "YulBlock", - "src": "0:33611:13", + "src": "0:33611:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "47:35:13", + "src": "47:35:163", "statements": [ { "nodeType": "YulAssignment", - "src": "57:19:13", + "src": "57:19:163", "value": { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "73:2:13", + "src": "73:2:163", "type": "", "value": "64" } @@ -731,16 +731,16 @@ "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "67:5:13" + "src": "67:5:163" }, "nodeType": "YulFunctionCall", - "src": "67:9:13" + "src": "67:9:163" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "57:6:13" + "src": "57:6:163" } ] } @@ -752,16 +752,16 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "40:6:13", + "src": "40:6:163", "type": "" } ], - "src": "7:75:13" + "src": "7:75:163" }, { "body": { "nodeType": "YulBlock", - "src": "177:28:13", + "src": "177:28:163", "statements": [ { "expression": { @@ -769,14 +769,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "194:1:13", + "src": "194:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "197:1:13", + "src": "197:1:163", "type": "", "value": "0" } @@ -784,24 +784,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "187:6:13" + "src": "187:6:163" }, "nodeType": "YulFunctionCall", - "src": "187:12:13" + "src": "187:12:163" }, "nodeType": "YulExpressionStatement", - "src": "187:12:13" + "src": "187:12:163" } ] }, "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulFunctionDefinition", - "src": "88:117:13" + "src": "88:117:163" }, { "body": { "nodeType": "YulBlock", - "src": "300:28:13", + "src": "300:28:163", "statements": [ { "expression": { @@ -809,14 +809,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "317:1:13", + "src": "317:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "320:1:13", + "src": "320:1:163", "type": "", "value": "0" } @@ -824,39 +824,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "310:6:13" + "src": "310:6:163" }, "nodeType": "YulFunctionCall", - "src": "310:12:13" + "src": "310:12:163" }, "nodeType": "YulExpressionStatement", - "src": "310:12:13" + "src": "310:12:163" } ] }, "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulFunctionDefinition", - "src": "211:117:13" + "src": "211:117:163" }, { "body": { "nodeType": "YulBlock", - "src": "378:105:13", + "src": "378:105:163", "statements": [ { "nodeType": "YulAssignment", - "src": "388:89:13", + "src": "388:89:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "403:5:13" + "src": "403:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "410:66:13", + "src": "410:66:163", "type": "", "value": "0xffffffff00000000000000000000000000000000000000000000000000000000" } @@ -864,16 +864,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "399:3:13" + "src": "399:3:163" }, "nodeType": "YulFunctionCall", - "src": "399:78:13" + "src": "399:78:163" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "388:7:13" + "src": "388:7:163" } ] } @@ -885,7 +885,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "360:5:13", + "src": "360:5:163", "type": "" } ], @@ -893,21 +893,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "370:7:13", + "src": "370:7:163", "type": "" } ], - "src": "334:149:13" + "src": "334:149:163" }, { "body": { "nodeType": "YulBlock", - "src": "531:78:13", + "src": "531:78:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "587:16:13", + "src": "587:16:163", "statements": [ { "expression": { @@ -915,14 +915,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "596:1:13", + "src": "596:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "599:1:13", + "src": "599:1:163", "type": "", "value": "0" } @@ -930,13 +930,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "589:6:13" + "src": "589:6:163" }, "nodeType": "YulFunctionCall", - "src": "589:12:13" + "src": "589:12:163" }, "nodeType": "YulExpressionStatement", - "src": "589:12:13" + "src": "589:12:163" } ] }, @@ -947,44 +947,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "554:5:13" + "src": "554:5:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "578:5:13" + "src": "578:5:163" } ], "functionName": { "name": "cleanup_t_bytes4", "nodeType": "YulIdentifier", - "src": "561:16:13" + "src": "561:16:163" }, "nodeType": "YulFunctionCall", - "src": "561:23:13" + "src": "561:23:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "551:2:13" + "src": "551:2:163" }, "nodeType": "YulFunctionCall", - "src": "551:34:13" + "src": "551:34:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "544:6:13" + "src": "544:6:163" }, "nodeType": "YulFunctionCall", - "src": "544:42:13" + "src": "544:42:163" }, "nodeType": "YulIf", - "src": "541:62:13" + "src": "541:62:163" } ] }, @@ -994,41 +994,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "524:5:13", + "src": "524:5:163", "type": "" } ], - "src": "489:120:13" + "src": "489:120:163" }, { "body": { "nodeType": "YulBlock", - "src": "666:86:13", + "src": "666:86:163", "statements": [ { "nodeType": "YulAssignment", - "src": "676:29:13", + "src": "676:29:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "698:6:13" + "src": "698:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "685:12:13" + "src": "685:12:163" }, "nodeType": "YulFunctionCall", - "src": "685:20:13" + "src": "685:20:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "676:5:13" + "src": "676:5:163" } ] }, @@ -1038,19 +1038,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "740:5:13" + "src": "740:5:163" } ], "functionName": { "name": "validator_revert_t_bytes4", "nodeType": "YulIdentifier", - "src": "714:25:13" + "src": "714:25:163" }, "nodeType": "YulFunctionCall", - "src": "714:32:13" + "src": "714:32:163" }, "nodeType": "YulExpressionStatement", - "src": "714:32:13" + "src": "714:32:163" } ] }, @@ -1060,13 +1060,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "644:6:13", + "src": "644:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "652:3:13", + "src": "652:3:163", "type": "" } ], @@ -1074,21 +1074,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "660:5:13", + "src": "660:5:163", "type": "" } ], - "src": "615:137:13" + "src": "615:137:163" }, { "body": { "nodeType": "YulBlock", - "src": "823:262:13", + "src": "823:262:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "869:83:13", + "src": "869:83:163", "statements": [ { "expression": { @@ -1096,13 +1096,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "871:77:13" + "src": "871:77:163" }, "nodeType": "YulFunctionCall", - "src": "871:79:13" + "src": "871:79:163" }, "nodeType": "YulExpressionStatement", - "src": "871:79:13" + "src": "871:79:163" } ] }, @@ -1113,26 +1113,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "844:7:13" + "src": "844:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "853:9:13" + "src": "853:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "840:3:13" + "src": "840:3:163" }, "nodeType": "YulFunctionCall", - "src": "840:23:13" + "src": "840:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "865:2:13", + "src": "865:2:163", "type": "", "value": "32" } @@ -1140,25 +1140,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "836:3:13" + "src": "836:3:163" }, "nodeType": "YulFunctionCall", - "src": "836:32:13" + "src": "836:32:163" }, "nodeType": "YulIf", - "src": "833:119:13" + "src": "833:119:163" }, { "nodeType": "YulBlock", - "src": "962:116:13", + "src": "962:116:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "977:15:13", + "src": "977:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "991:1:13", + "src": "991:1:163", "type": "", "value": "0" }, @@ -1166,14 +1166,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "981:6:13", + "src": "981:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "1006:62:13", + "src": "1006:62:163", "value": { "arguments": [ { @@ -1181,41 +1181,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1040:9:13" + "src": "1040:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "1051:6:13" + "src": "1051:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1036:3:13" + "src": "1036:3:163" }, "nodeType": "YulFunctionCall", - "src": "1036:22:13" + "src": "1036:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "1060:7:13" + "src": "1060:7:163" } ], "functionName": { "name": "abi_decode_t_bytes4", "nodeType": "YulIdentifier", - "src": "1016:19:13" + "src": "1016:19:163" }, "nodeType": "YulFunctionCall", - "src": "1016:52:13" + "src": "1016:52:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1006:6:13" + "src": "1006:6:163" } ] } @@ -1229,13 +1229,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "793:9:13", + "src": "793:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "804:7:13", + "src": "804:7:163", "type": "" } ], @@ -1243,20 +1243,20 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "816:6:13", + "src": "816:6:163", "type": "" } ], - "src": "758:327:13" + "src": "758:327:163" }, { "body": { "nodeType": "YulBlock", - "src": "1133:48:13", + "src": "1133:48:163", "statements": [ { "nodeType": "YulAssignment", - "src": "1143:32:13", + "src": "1143:32:163", "value": { "arguments": [ { @@ -1264,31 +1264,31 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "1168:5:13" + "src": "1168:5:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1161:6:13" + "src": "1161:6:163" }, "nodeType": "YulFunctionCall", - "src": "1161:13:13" + "src": "1161:13:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "1154:6:13" + "src": "1154:6:163" }, "nodeType": "YulFunctionCall", - "src": "1154:21:13" + "src": "1154:21:163" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "1143:7:13" + "src": "1143:7:163" } ] } @@ -1300,7 +1300,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1115:5:13", + "src": "1115:5:163", "type": "" } ], @@ -1308,16 +1308,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "1125:7:13", + "src": "1125:7:163", "type": "" } ], - "src": "1091:90:13" + "src": "1091:90:163" }, { "body": { "nodeType": "YulBlock", - "src": "1246:50:13", + "src": "1246:50:163", "statements": [ { "expression": { @@ -1325,35 +1325,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1263:3:13" + "src": "1263:3:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1283:5:13" + "src": "1283:5:163" } ], "functionName": { "name": "cleanup_t_bool", "nodeType": "YulIdentifier", - "src": "1268:14:13" + "src": "1268:14:163" }, "nodeType": "YulFunctionCall", - "src": "1268:21:13" + "src": "1268:21:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1256:6:13" + "src": "1256:6:163" }, "nodeType": "YulFunctionCall", - "src": "1256:34:13" + "src": "1256:34:163" }, "nodeType": "YulExpressionStatement", - "src": "1256:34:13" + "src": "1256:34:163" } ] }, @@ -1363,37 +1363,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1234:5:13", + "src": "1234:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "1241:3:13", + "src": "1241:3:163", "type": "" } ], - "src": "1187:109:13" + "src": "1187:109:163" }, { "body": { "nodeType": "YulBlock", - "src": "1394:118:13", + "src": "1394:118:163", "statements": [ { "nodeType": "YulAssignment", - "src": "1404:26:13", + "src": "1404:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1416:9:13" + "src": "1416:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1427:2:13", + "src": "1427:2:163", "type": "", "value": "32" } @@ -1401,16 +1401,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1412:3:13" + "src": "1412:3:163" }, "nodeType": "YulFunctionCall", - "src": "1412:18:13" + "src": "1412:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "1404:4:13" + "src": "1404:4:163" } ] }, @@ -1420,19 +1420,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "1478:6:13" + "src": "1478:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "1491:9:13" + "src": "1491:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1502:1:13", + "src": "1502:1:163", "type": "", "value": "0" } @@ -1440,22 +1440,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1487:3:13" + "src": "1487:3:163" }, "nodeType": "YulFunctionCall", - "src": "1487:17:13" + "src": "1487:17:163" } ], "functionName": { "name": "abi_encode_t_bool_to_t_bool_fromStack", "nodeType": "YulIdentifier", - "src": "1440:37:13" + "src": "1440:37:163" }, "nodeType": "YulFunctionCall", - "src": "1440:65:13" + "src": "1440:65:163" }, "nodeType": "YulExpressionStatement", - "src": "1440:65:13" + "src": "1440:65:163" } ] }, @@ -1465,13 +1465,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "1366:9:13", + "src": "1366:9:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "1378:6:13", + "src": "1378:6:163", "type": "" } ], @@ -1479,41 +1479,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "1389:4:13", + "src": "1389:4:163", "type": "" } ], - "src": "1302:210:13" + "src": "1302:210:163" }, { "body": { "nodeType": "YulBlock", - "src": "1577:40:13", + "src": "1577:40:163", "statements": [ { "nodeType": "YulAssignment", - "src": "1588:22:13", + "src": "1588:22:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "1604:5:13" + "src": "1604:5:163" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "1598:5:13" + "src": "1598:5:163" }, "nodeType": "YulFunctionCall", - "src": "1598:12:13" + "src": "1598:12:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "1588:6:13" + "src": "1588:6:163" } ] } @@ -1525,7 +1525,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "1560:5:13", + "src": "1560:5:163", "type": "" } ], @@ -1533,16 +1533,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "1570:6:13", + "src": "1570:6:163", "type": "" } ], - "src": "1518:99:13" + "src": "1518:99:163" }, { "body": { "nodeType": "YulBlock", - "src": "1719:73:13", + "src": "1719:73:163", "statements": [ { "expression": { @@ -1550,39 +1550,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1736:3:13" + "src": "1736:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1741:6:13" + "src": "1741:6:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1729:6:13" + "src": "1729:6:163" }, "nodeType": "YulFunctionCall", - "src": "1729:19:13" + "src": "1729:19:163" }, "nodeType": "YulExpressionStatement", - "src": "1729:19:13" + "src": "1729:19:163" }, { "nodeType": "YulAssignment", - "src": "1757:29:13", + "src": "1757:29:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "1776:3:13" + "src": "1776:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1781:4:13", + "src": "1781:4:163", "type": "", "value": "0x20" } @@ -1590,16 +1590,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1772:3:13" + "src": "1772:3:163" }, "nodeType": "YulFunctionCall", - "src": "1772:14:13" + "src": "1772:14:163" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "1757:11:13" + "src": "1757:11:163" } ] } @@ -1611,13 +1611,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "1691:3:13", + "src": "1691:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1696:6:13", + "src": "1696:6:163", "type": "" } ], @@ -1625,24 +1625,24 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "1707:11:13", + "src": "1707:11:163", "type": "" } ], - "src": "1623:169:13" + "src": "1623:169:163" }, { "body": { "nodeType": "YulBlock", - "src": "1847:258:13", + "src": "1847:258:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "1857:10:13", + "src": "1857:10:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "1866:1:13", + "src": "1866:1:163", "type": "", "value": "0" }, @@ -1650,7 +1650,7 @@ { "name": "i", "nodeType": "YulTypedName", - "src": "1861:1:13", + "src": "1861:1:163", "type": "" } ] @@ -1658,7 +1658,7 @@ { "body": { "nodeType": "YulBlock", - "src": "1926:63:13", + "src": "1926:63:163", "statements": [ { "expression": { @@ -1668,21 +1668,21 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "1951:3:13" + "src": "1951:3:163" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1956:1:13" + "src": "1956:1:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1947:3:13" + "src": "1947:3:163" }, "nodeType": "YulFunctionCall", - "src": "1947:11:13" + "src": "1947:11:163" }, { "arguments": [ @@ -1691,42 +1691,42 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "1970:3:13" + "src": "1970:3:163" }, { "name": "i", "nodeType": "YulIdentifier", - "src": "1975:1:13" + "src": "1975:1:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1966:3:13" + "src": "1966:3:163" }, "nodeType": "YulFunctionCall", - "src": "1966:11:13" + "src": "1966:11:163" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "1960:5:13" + "src": "1960:5:163" }, "nodeType": "YulFunctionCall", - "src": "1960:18:13" + "src": "1960:18:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "1940:6:13" + "src": "1940:6:163" }, "nodeType": "YulFunctionCall", - "src": "1940:39:13" + "src": "1940:39:163" }, "nodeType": "YulExpressionStatement", - "src": "1940:39:13" + "src": "1940:39:163" } ] }, @@ -1735,41 +1735,41 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "1887:1:13" + "src": "1887:1:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "1890:6:13" + "src": "1890:6:163" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "1884:2:13" + "src": "1884:2:163" }, "nodeType": "YulFunctionCall", - "src": "1884:13:13" + "src": "1884:13:163" }, "nodeType": "YulForLoop", "post": { "nodeType": "YulBlock", - "src": "1898:19:13", + "src": "1898:19:163", "statements": [ { "nodeType": "YulAssignment", - "src": "1900:15:13", + "src": "1900:15:163", "value": { "arguments": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1909:1:13" + "src": "1909:1:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "1912:2:13", + "src": "1912:2:163", "type": "", "value": "32" } @@ -1777,16 +1777,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "1905:3:13" + "src": "1905:3:163" }, "nodeType": "YulFunctionCall", - "src": "1905:10:13" + "src": "1905:10:163" }, "variableNames": [ { "name": "i", "nodeType": "YulIdentifier", - "src": "1900:1:13" + "src": "1900:1:163" } ] } @@ -1794,15 +1794,15 @@ }, "pre": { "nodeType": "YulBlock", - "src": "1880:3:13", + "src": "1880:3:163", "statements": [] }, - "src": "1876:113:13" + "src": "1876:113:163" }, { "body": { "nodeType": "YulBlock", - "src": "2023:76:13", + "src": "2023:76:163", "statements": [ { "expression": { @@ -1812,26 +1812,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "2073:3:13" + "src": "2073:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2078:6:13" + "src": "2078:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2069:3:13" + "src": "2069:3:163" }, "nodeType": "YulFunctionCall", - "src": "2069:16:13" + "src": "2069:16:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2087:1:13", + "src": "2087:1:163", "type": "", "value": "0" } @@ -1839,13 +1839,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2062:6:13" + "src": "2062:6:163" }, "nodeType": "YulFunctionCall", - "src": "2062:27:13" + "src": "2062:27:163" }, "nodeType": "YulExpressionStatement", - "src": "2062:27:13" + "src": "2062:27:163" } ] }, @@ -1854,24 +1854,24 @@ { "name": "i", "nodeType": "YulIdentifier", - "src": "2004:1:13" + "src": "2004:1:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2007:6:13" + "src": "2007:6:163" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "2001:2:13" + "src": "2001:2:163" }, "nodeType": "YulFunctionCall", - "src": "2001:13:13" + "src": "2001:13:163" }, "nodeType": "YulIf", - "src": "1998:101:13" + "src": "1998:101:163" } ] }, @@ -1881,32 +1881,32 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "1829:3:13", + "src": "1829:3:163", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "1834:3:13", + "src": "1834:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "1839:6:13", + "src": "1839:6:163", "type": "" } ], - "src": "1798:307:13" + "src": "1798:307:163" }, { "body": { "nodeType": "YulBlock", - "src": "2159:54:13", + "src": "2159:54:163", "statements": [ { "nodeType": "YulAssignment", - "src": "2169:38:13", + "src": "2169:38:163", "value": { "arguments": [ { @@ -1914,12 +1914,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2187:5:13" + "src": "2187:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2194:2:13", + "src": "2194:2:163", "type": "", "value": "31" } @@ -1927,17 +1927,17 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2183:3:13" + "src": "2183:3:163" }, "nodeType": "YulFunctionCall", - "src": "2183:14:13" + "src": "2183:14:163" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "2203:2:13", + "src": "2203:2:163", "type": "", "value": "31" } @@ -1945,25 +1945,25 @@ "functionName": { "name": "not", "nodeType": "YulIdentifier", - "src": "2199:3:13" + "src": "2199:3:163" }, "nodeType": "YulFunctionCall", - "src": "2199:7:13" + "src": "2199:7:163" } ], "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "2179:3:13" + "src": "2179:3:163" }, "nodeType": "YulFunctionCall", - "src": "2179:28:13" + "src": "2179:28:163" }, "variableNames": [ { "name": "result", "nodeType": "YulIdentifier", - "src": "2169:6:13" + "src": "2169:6:163" } ] } @@ -1975,7 +1975,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2142:5:13", + "src": "2142:5:163", "type": "" } ], @@ -1983,74 +1983,74 @@ { "name": "result", "nodeType": "YulTypedName", - "src": "2152:6:13", + "src": "2152:6:163", "type": "" } ], - "src": "2111:102:13" + "src": "2111:102:163" }, { "body": { "nodeType": "YulBlock", - "src": "2311:272:13", + "src": "2311:272:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "2321:53:13", + "src": "2321:53:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "2368:5:13" + "src": "2368:5:163" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "2335:32:13" + "src": "2335:32:163" }, "nodeType": "YulFunctionCall", - "src": "2335:39:13" + "src": "2335:39:163" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "2325:6:13", + "src": "2325:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "2383:78:13", + "src": "2383:78:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2449:3:13" + "src": "2449:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2454:6:13" + "src": "2454:6:163" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "2390:58:13" + "src": "2390:58:163" }, "nodeType": "YulFunctionCall", - "src": "2390:71:13" + "src": "2390:71:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2383:3:13" + "src": "2383:3:163" } ] }, @@ -2062,12 +2062,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "2496:5:13" + "src": "2496:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2503:4:13", + "src": "2503:4:163", "type": "", "value": "0x20" } @@ -2075,73 +2075,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2492:3:13" + "src": "2492:3:163" }, "nodeType": "YulFunctionCall", - "src": "2492:16:13" + "src": "2492:16:163" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "2510:3:13" + "src": "2510:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "2515:6:13" + "src": "2515:6:163" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "2470:21:13" + "src": "2470:21:163" }, "nodeType": "YulFunctionCall", - "src": "2470:52:13" + "src": "2470:52:163" }, "nodeType": "YulExpressionStatement", - "src": "2470:52:13" + "src": "2470:52:163" }, { "nodeType": "YulAssignment", - "src": "2531:46:13", + "src": "2531:46:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "2542:3:13" + "src": "2542:3:163" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "2569:6:13" + "src": "2569:6:163" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "2547:21:13" + "src": "2547:21:163" }, "nodeType": "YulFunctionCall", - "src": "2547:29:13" + "src": "2547:29:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2538:3:13" + "src": "2538:3:163" }, "nodeType": "YulFunctionCall", - "src": "2538:39:13" + "src": "2538:39:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "2531:3:13" + "src": "2531:3:163" } ] } @@ -2153,13 +2153,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2292:5:13", + "src": "2292:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "2299:3:13", + "src": "2299:3:163", "type": "" } ], @@ -2167,31 +2167,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "2307:3:13", + "src": "2307:3:163", "type": "" } ], - "src": "2219:364:13" + "src": "2219:364:163" }, { "body": { "nodeType": "YulBlock", - "src": "2707:195:13", + "src": "2707:195:163", "statements": [ { "nodeType": "YulAssignment", - "src": "2717:26:13", + "src": "2717:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2729:9:13" + "src": "2729:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2740:2:13", + "src": "2740:2:163", "type": "", "value": "32" } @@ -2199,16 +2199,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2725:3:13" + "src": "2725:3:163" }, "nodeType": "YulFunctionCall", - "src": "2725:18:13" + "src": "2725:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2717:4:13" + "src": "2717:4:163" } ] }, @@ -2220,12 +2220,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2764:9:13" + "src": "2764:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "2775:1:13", + "src": "2775:1:163", "type": "", "value": "0" } @@ -2233,73 +2233,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "2760:3:13" + "src": "2760:3:163" }, "nodeType": "YulFunctionCall", - "src": "2760:17:13" + "src": "2760:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2783:4:13" + "src": "2783:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "2789:9:13" + "src": "2789:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "2779:3:13" + "src": "2779:3:163" }, "nodeType": "YulFunctionCall", - "src": "2779:20:13" + "src": "2779:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "2753:6:13" + "src": "2753:6:163" }, "nodeType": "YulFunctionCall", - "src": "2753:47:13" + "src": "2753:47:163" }, "nodeType": "YulExpressionStatement", - "src": "2753:47:13" + "src": "2753:47:163" }, { "nodeType": "YulAssignment", - "src": "2809:86:13", + "src": "2809:86:163", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "2881:6:13" + "src": "2881:6:163" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "2890:4:13" + "src": "2890:4:163" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "2817:63:13" + "src": "2817:63:163" }, "nodeType": "YulFunctionCall", - "src": "2817:78:13" + "src": "2817:78:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "2809:4:13" + "src": "2809:4:163" } ] } @@ -2311,13 +2311,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "2679:9:13", + "src": "2679:9:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "2691:6:13", + "src": "2691:6:163", "type": "" } ], @@ -2325,30 +2325,30 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "2702:4:13", + "src": "2702:4:163", "type": "" } ], - "src": "2589:313:13" + "src": "2589:313:163" }, { "body": { "nodeType": "YulBlock", - "src": "2953:32:13", + "src": "2953:32:163", "statements": [ { "nodeType": "YulAssignment", - "src": "2963:16:13", + "src": "2963:16:163", "value": { "name": "value", "nodeType": "YulIdentifier", - "src": "2974:5:13" + "src": "2974:5:163" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "2963:7:13" + "src": "2963:7:163" } ] } @@ -2360,7 +2360,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "2935:5:13", + "src": "2935:5:163", "type": "" } ], @@ -2368,21 +2368,21 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "2945:7:13", + "src": "2945:7:163", "type": "" } ], - "src": "2908:77:13" + "src": "2908:77:163" }, { "body": { "nodeType": "YulBlock", - "src": "3034:79:13", + "src": "3034:79:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3091:16:13", + "src": "3091:16:163", "statements": [ { "expression": { @@ -2390,14 +2390,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "3100:1:13", + "src": "3100:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3103:1:13", + "src": "3103:1:163", "type": "", "value": "0" } @@ -2405,13 +2405,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "3093:6:13" + "src": "3093:6:163" }, "nodeType": "YulFunctionCall", - "src": "3093:12:13" + "src": "3093:12:163" }, "nodeType": "YulExpressionStatement", - "src": "3093:12:13" + "src": "3093:12:163" } ] }, @@ -2422,44 +2422,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "3057:5:13" + "src": "3057:5:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3082:5:13" + "src": "3082:5:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "3064:17:13" + "src": "3064:17:163" }, "nodeType": "YulFunctionCall", - "src": "3064:24:13" + "src": "3064:24:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "3054:2:13" + "src": "3054:2:163" }, "nodeType": "YulFunctionCall", - "src": "3054:35:13" + "src": "3054:35:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "3047:6:13" + "src": "3047:6:163" }, "nodeType": "YulFunctionCall", - "src": "3047:43:13" + "src": "3047:43:163" }, "nodeType": "YulIf", - "src": "3044:63:13" + "src": "3044:63:163" } ] }, @@ -2469,41 +2469,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3027:5:13", + "src": "3027:5:163", "type": "" } ], - "src": "2991:122:13" + "src": "2991:122:163" }, { "body": { "nodeType": "YulBlock", - "src": "3171:87:13", + "src": "3171:87:163", "statements": [ { "nodeType": "YulAssignment", - "src": "3181:29:13", + "src": "3181:29:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "3203:6:13" + "src": "3203:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "3190:12:13" + "src": "3190:12:163" }, "nodeType": "YulFunctionCall", - "src": "3190:20:13" + "src": "3190:20:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3181:5:13" + "src": "3181:5:163" } ] }, @@ -2513,19 +2513,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "3246:5:13" + "src": "3246:5:163" } ], "functionName": { "name": "validator_revert_t_uint256", "nodeType": "YulIdentifier", - "src": "3219:26:13" + "src": "3219:26:163" }, "nodeType": "YulFunctionCall", - "src": "3219:33:13" + "src": "3219:33:163" }, "nodeType": "YulExpressionStatement", - "src": "3219:33:13" + "src": "3219:33:163" } ] }, @@ -2535,13 +2535,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3149:6:13", + "src": "3149:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "3157:3:13", + "src": "3157:3:163", "type": "" } ], @@ -2549,21 +2549,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3165:5:13", + "src": "3165:5:163", "type": "" } ], - "src": "3119:139:13" + "src": "3119:139:163" }, { "body": { "nodeType": "YulBlock", - "src": "3330:263:13", + "src": "3330:263:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "3376:83:13", + "src": "3376:83:163", "statements": [ { "expression": { @@ -2571,13 +2571,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "3378:77:13" + "src": "3378:77:163" }, "nodeType": "YulFunctionCall", - "src": "3378:79:13" + "src": "3378:79:163" }, "nodeType": "YulExpressionStatement", - "src": "3378:79:13" + "src": "3378:79:163" } ] }, @@ -2588,26 +2588,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3351:7:13" + "src": "3351:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3360:9:13" + "src": "3360:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "3347:3:13" + "src": "3347:3:163" }, "nodeType": "YulFunctionCall", - "src": "3347:23:13" + "src": "3347:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3372:2:13", + "src": "3372:2:163", "type": "", "value": "32" } @@ -2615,25 +2615,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "3343:3:13" + "src": "3343:3:163" }, "nodeType": "YulFunctionCall", - "src": "3343:32:13" + "src": "3343:32:163" }, "nodeType": "YulIf", - "src": "3340:119:13" + "src": "3340:119:163" }, { "nodeType": "YulBlock", - "src": "3469:117:13", + "src": "3469:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "3484:15:13", + "src": "3484:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "3498:1:13", + "src": "3498:1:163", "type": "", "value": "0" }, @@ -2641,14 +2641,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "3488:6:13", + "src": "3488:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "3513:63:13", + "src": "3513:63:163", "value": { "arguments": [ { @@ -2656,41 +2656,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "3548:9:13" + "src": "3548:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "3559:6:13" + "src": "3559:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "3544:3:13" + "src": "3544:3:163" }, "nodeType": "YulFunctionCall", - "src": "3544:22:13" + "src": "3544:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "3568:7:13" + "src": "3568:7:163" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "3523:20:13" + "src": "3523:20:163" }, "nodeType": "YulFunctionCall", - "src": "3523:53:13" + "src": "3523:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "3513:6:13" + "src": "3513:6:163" } ] } @@ -2704,13 +2704,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "3300:9:13", + "src": "3300:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "3311:7:13", + "src": "3311:7:163", "type": "" } ], @@ -2718,31 +2718,31 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "3323:6:13", + "src": "3323:6:163", "type": "" } ], - "src": "3264:329:13" + "src": "3264:329:163" }, { "body": { "nodeType": "YulBlock", - "src": "3644:81:13", + "src": "3644:81:163", "statements": [ { "nodeType": "YulAssignment", - "src": "3654:65:13", + "src": "3654:65:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3669:5:13" + "src": "3669:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "3676:42:13", + "src": "3676:42:163", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffff" } @@ -2750,16 +2750,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "3665:3:13" + "src": "3665:3:163" }, "nodeType": "YulFunctionCall", - "src": "3665:54:13" + "src": "3665:54:163" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "3654:7:13" + "src": "3654:7:163" } ] } @@ -2771,7 +2771,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3626:5:13", + "src": "3626:5:163", "type": "" } ], @@ -2779,41 +2779,41 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "3636:7:13", + "src": "3636:7:163", "type": "" } ], - "src": "3599:126:13" + "src": "3599:126:163" }, { "body": { "nodeType": "YulBlock", - "src": "3776:51:13", + "src": "3776:51:163", "statements": [ { "nodeType": "YulAssignment", - "src": "3786:35:13", + "src": "3786:35:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3815:5:13" + "src": "3815:5:163" } ], "functionName": { "name": "cleanup_t_uint160", "nodeType": "YulIdentifier", - "src": "3797:17:13" + "src": "3797:17:163" }, "nodeType": "YulFunctionCall", - "src": "3797:24:13" + "src": "3797:24:163" }, "variableNames": [ { "name": "cleaned", "nodeType": "YulIdentifier", - "src": "3786:7:13" + "src": "3786:7:163" } ] } @@ -2825,7 +2825,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3758:5:13", + "src": "3758:5:163", "type": "" } ], @@ -2833,16 +2833,16 @@ { "name": "cleaned", "nodeType": "YulTypedName", - "src": "3768:7:13", + "src": "3768:7:163", "type": "" } ], - "src": "3731:96:13" + "src": "3731:96:163" }, { "body": { "nodeType": "YulBlock", - "src": "3898:53:13", + "src": "3898:53:163", "statements": [ { "expression": { @@ -2850,35 +2850,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "3915:3:13" + "src": "3915:3:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "3938:5:13" + "src": "3938:5:163" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "3920:17:13" + "src": "3920:17:163" }, "nodeType": "YulFunctionCall", - "src": "3920:24:13" + "src": "3920:24:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "3908:6:13" + "src": "3908:6:163" }, "nodeType": "YulFunctionCall", - "src": "3908:37:13" + "src": "3908:37:163" }, "nodeType": "YulExpressionStatement", - "src": "3908:37:13" + "src": "3908:37:163" } ] }, @@ -2888,37 +2888,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "3886:5:13", + "src": "3886:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "3893:3:13", + "src": "3893:3:163", "type": "" } ], - "src": "3833:118:13" + "src": "3833:118:163" }, { "body": { "nodeType": "YulBlock", - "src": "4055:124:13", + "src": "4055:124:163", "statements": [ { "nodeType": "YulAssignment", - "src": "4065:26:13", + "src": "4065:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4077:9:13" + "src": "4077:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4088:2:13", + "src": "4088:2:163", "type": "", "value": "32" } @@ -2926,16 +2926,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4073:3:13" + "src": "4073:3:163" }, "nodeType": "YulFunctionCall", - "src": "4073:18:13" + "src": "4073:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "4065:4:13" + "src": "4065:4:163" } ] }, @@ -2945,19 +2945,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4145:6:13" + "src": "4145:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4158:9:13" + "src": "4158:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4169:1:13", + "src": "4169:1:163", "type": "", "value": "0" } @@ -2965,22 +2965,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4154:3:13" + "src": "4154:3:163" }, "nodeType": "YulFunctionCall", - "src": "4154:17:13" + "src": "4154:17:163" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "4101:43:13" + "src": "4101:43:163" }, "nodeType": "YulFunctionCall", - "src": "4101:71:13" + "src": "4101:71:163" }, "nodeType": "YulExpressionStatement", - "src": "4101:71:13" + "src": "4101:71:163" } ] }, @@ -2990,13 +2990,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4027:9:13", + "src": "4027:9:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "4039:6:13", + "src": "4039:6:163", "type": "" } ], @@ -3004,21 +3004,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "4050:4:13", + "src": "4050:4:163", "type": "" } ], - "src": "3957:222:13" + "src": "3957:222:163" }, { "body": { "nodeType": "YulBlock", - "src": "4228:79:13", + "src": "4228:79:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4285:16:13", + "src": "4285:16:163", "statements": [ { "expression": { @@ -3026,14 +3026,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "4294:1:13", + "src": "4294:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4297:1:13", + "src": "4297:1:163", "type": "", "value": "0" } @@ -3041,13 +3041,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "4287:6:13" + "src": "4287:6:163" }, "nodeType": "YulFunctionCall", - "src": "4287:12:13" + "src": "4287:12:163" }, "nodeType": "YulExpressionStatement", - "src": "4287:12:13" + "src": "4287:12:163" } ] }, @@ -3058,44 +3058,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4251:5:13" + "src": "4251:5:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4276:5:13" + "src": "4276:5:163" } ], "functionName": { "name": "cleanup_t_address", "nodeType": "YulIdentifier", - "src": "4258:17:13" + "src": "4258:17:163" }, "nodeType": "YulFunctionCall", - "src": "4258:24:13" + "src": "4258:24:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "4248:2:13" + "src": "4248:2:163" }, "nodeType": "YulFunctionCall", - "src": "4248:35:13" + "src": "4248:35:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "4241:6:13" + "src": "4241:6:163" }, "nodeType": "YulFunctionCall", - "src": "4241:43:13" + "src": "4241:43:163" }, "nodeType": "YulIf", - "src": "4238:63:13" + "src": "4238:63:163" } ] }, @@ -3105,41 +3105,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4221:5:13", + "src": "4221:5:163", "type": "" } ], - "src": "4185:122:13" + "src": "4185:122:163" }, { "body": { "nodeType": "YulBlock", - "src": "4365:87:13", + "src": "4365:87:163", "statements": [ { "nodeType": "YulAssignment", - "src": "4375:29:13", + "src": "4375:29:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "4397:6:13" + "src": "4397:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "4384:12:13" + "src": "4384:12:163" }, "nodeType": "YulFunctionCall", - "src": "4384:20:13" + "src": "4384:20:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "4375:5:13" + "src": "4375:5:163" } ] }, @@ -3149,19 +3149,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "4440:5:13" + "src": "4440:5:163" } ], "functionName": { "name": "validator_revert_t_address", "nodeType": "YulIdentifier", - "src": "4413:26:13" + "src": "4413:26:163" }, "nodeType": "YulFunctionCall", - "src": "4413:33:13" + "src": "4413:33:163" }, "nodeType": "YulExpressionStatement", - "src": "4413:33:13" + "src": "4413:33:163" } ] }, @@ -3171,13 +3171,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4343:6:13", + "src": "4343:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "4351:3:13", + "src": "4351:3:163", "type": "" } ], @@ -3185,21 +3185,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "4359:5:13", + "src": "4359:5:163", "type": "" } ], - "src": "4313:139:13" + "src": "4313:139:163" }, { "body": { "nodeType": "YulBlock", - "src": "4541:391:13", + "src": "4541:391:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "4587:83:13", + "src": "4587:83:163", "statements": [ { "expression": { @@ -3207,13 +3207,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "4589:77:13" + "src": "4589:77:163" }, "nodeType": "YulFunctionCall", - "src": "4589:79:13" + "src": "4589:79:163" }, "nodeType": "YulExpressionStatement", - "src": "4589:79:13" + "src": "4589:79:163" } ] }, @@ -3224,26 +3224,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4562:7:13" + "src": "4562:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4571:9:13" + "src": "4571:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "4558:3:13" + "src": "4558:3:163" }, "nodeType": "YulFunctionCall", - "src": "4558:23:13" + "src": "4558:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "4583:2:13", + "src": "4583:2:163", "type": "", "value": "64" } @@ -3251,25 +3251,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "4554:3:13" + "src": "4554:3:163" }, "nodeType": "YulFunctionCall", - "src": "4554:32:13" + "src": "4554:32:163" }, "nodeType": "YulIf", - "src": "4551:119:13" + "src": "4551:119:163" }, { "nodeType": "YulBlock", - "src": "4680:117:13", + "src": "4680:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "4695:15:13", + "src": "4695:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "4709:1:13", + "src": "4709:1:163", "type": "", "value": "0" }, @@ -3277,14 +3277,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4699:6:13", + "src": "4699:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4724:63:13", + "src": "4724:63:163", "value": { "arguments": [ { @@ -3292,41 +3292,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4759:9:13" + "src": "4759:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4770:6:13" + "src": "4770:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4755:3:13" + "src": "4755:3:163" }, "nodeType": "YulFunctionCall", - "src": "4755:22:13" + "src": "4755:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4779:7:13" + "src": "4779:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "4734:20:13" + "src": "4734:20:163" }, "nodeType": "YulFunctionCall", - "src": "4734:53:13" + "src": "4734:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "4724:6:13" + "src": "4724:6:163" } ] } @@ -3334,15 +3334,15 @@ }, { "nodeType": "YulBlock", - "src": "4807:118:13", + "src": "4807:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "4822:16:13", + "src": "4822:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "4836:2:13", + "src": "4836:2:163", "type": "", "value": "32" }, @@ -3350,14 +3350,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "4826:6:13", + "src": "4826:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "4852:63:13", + "src": "4852:63:163", "value": { "arguments": [ { @@ -3365,41 +3365,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "4887:9:13" + "src": "4887:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "4898:6:13" + "src": "4898:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "4883:3:13" + "src": "4883:3:163" }, "nodeType": "YulFunctionCall", - "src": "4883:22:13" + "src": "4883:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "4907:7:13" + "src": "4907:7:163" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "4862:20:13" + "src": "4862:20:163" }, "nodeType": "YulFunctionCall", - "src": "4862:53:13" + "src": "4862:53:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "4852:6:13" + "src": "4852:6:163" } ] } @@ -3413,13 +3413,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4503:9:13", + "src": "4503:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "4514:7:13", + "src": "4514:7:163", "type": "" } ], @@ -3427,27 +3427,27 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "4526:6:13", + "src": "4526:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "4534:6:13", + "src": "4534:6:163", "type": "" } ], - "src": "4458:474:13" + "src": "4458:474:163" }, { "body": { "nodeType": "YulBlock", - "src": "5038:519:13", + "src": "5038:519:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "5084:83:13", + "src": "5084:83:163", "statements": [ { "expression": { @@ -3455,13 +3455,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "5086:77:13" + "src": "5086:77:163" }, "nodeType": "YulFunctionCall", - "src": "5086:79:13" + "src": "5086:79:163" }, "nodeType": "YulExpressionStatement", - "src": "5086:79:13" + "src": "5086:79:163" } ] }, @@ -3472,26 +3472,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5059:7:13" + "src": "5059:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5068:9:13" + "src": "5068:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "5055:3:13" + "src": "5055:3:163" }, "nodeType": "YulFunctionCall", - "src": "5055:23:13" + "src": "5055:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5080:2:13", + "src": "5080:2:163", "type": "", "value": "96" } @@ -3499,25 +3499,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "5051:3:13" + "src": "5051:3:163" }, "nodeType": "YulFunctionCall", - "src": "5051:32:13" + "src": "5051:32:163" }, "nodeType": "YulIf", - "src": "5048:119:13" + "src": "5048:119:163" }, { "nodeType": "YulBlock", - "src": "5177:117:13", + "src": "5177:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5192:15:13", + "src": "5192:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5206:1:13", + "src": "5206:1:163", "type": "", "value": "0" }, @@ -3525,14 +3525,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5196:6:13", + "src": "5196:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5221:63:13", + "src": "5221:63:163", "value": { "arguments": [ { @@ -3540,41 +3540,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5256:9:13" + "src": "5256:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5267:6:13" + "src": "5267:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5252:3:13" + "src": "5252:3:163" }, "nodeType": "YulFunctionCall", - "src": "5252:22:13" + "src": "5252:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5276:7:13" + "src": "5276:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "5231:20:13" + "src": "5231:20:163" }, "nodeType": "YulFunctionCall", - "src": "5231:53:13" + "src": "5231:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5221:6:13" + "src": "5221:6:163" } ] } @@ -3582,15 +3582,15 @@ }, { "nodeType": "YulBlock", - "src": "5304:118:13", + "src": "5304:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5319:16:13", + "src": "5319:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5333:2:13", + "src": "5333:2:163", "type": "", "value": "32" }, @@ -3598,14 +3598,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5323:6:13", + "src": "5323:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5349:63:13", + "src": "5349:63:163", "value": { "arguments": [ { @@ -3613,41 +3613,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5384:9:13" + "src": "5384:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5395:6:13" + "src": "5395:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5380:3:13" + "src": "5380:3:163" }, "nodeType": "YulFunctionCall", - "src": "5380:22:13" + "src": "5380:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5404:7:13" + "src": "5404:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "5359:20:13" + "src": "5359:20:163" }, "nodeType": "YulFunctionCall", - "src": "5359:53:13" + "src": "5359:53:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "5349:6:13" + "src": "5349:6:163" } ] } @@ -3655,15 +3655,15 @@ }, { "nodeType": "YulBlock", - "src": "5432:118:13", + "src": "5432:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5447:16:13", + "src": "5447:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5461:2:13", + "src": "5461:2:163", "type": "", "value": "64" }, @@ -3671,14 +3671,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5451:6:13", + "src": "5451:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5477:63:13", + "src": "5477:63:163", "value": { "arguments": [ { @@ -3686,41 +3686,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5512:9:13" + "src": "5512:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5523:6:13" + "src": "5523:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5508:3:13" + "src": "5508:3:163" }, "nodeType": "YulFunctionCall", - "src": "5508:22:13" + "src": "5508:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5532:7:13" + "src": "5532:7:163" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "5487:20:13" + "src": "5487:20:163" }, "nodeType": "YulFunctionCall", - "src": "5487:53:13" + "src": "5487:53:163" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "5477:6:13" + "src": "5477:6:163" } ] } @@ -3734,13 +3734,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "4992:9:13", + "src": "4992:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "5003:7:13", + "src": "5003:7:163", "type": "" } ], @@ -3748,33 +3748,33 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "5015:6:13", + "src": "5015:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "5023:6:13", + "src": "5023:6:163", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "5031:6:13", + "src": "5031:6:163", "type": "" } ], - "src": "4938:619:13" + "src": "4938:619:163" }, { "body": { "nodeType": "YulBlock", - "src": "5629:263:13", + "src": "5629:263:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "5675:83:13", + "src": "5675:83:163", "statements": [ { "expression": { @@ -3782,13 +3782,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "5677:77:13" + "src": "5677:77:163" }, "nodeType": "YulFunctionCall", - "src": "5677:79:13" + "src": "5677:79:163" }, "nodeType": "YulExpressionStatement", - "src": "5677:79:13" + "src": "5677:79:163" } ] }, @@ -3799,26 +3799,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5650:7:13" + "src": "5650:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5659:9:13" + "src": "5659:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "5646:3:13" + "src": "5646:3:163" }, "nodeType": "YulFunctionCall", - "src": "5646:23:13" + "src": "5646:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "5671:2:13", + "src": "5671:2:163", "type": "", "value": "32" } @@ -3826,25 +3826,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "5642:3:13" + "src": "5642:3:163" }, "nodeType": "YulFunctionCall", - "src": "5642:32:13" + "src": "5642:32:163" }, "nodeType": "YulIf", - "src": "5639:119:13" + "src": "5639:119:163" }, { "nodeType": "YulBlock", - "src": "5768:117:13", + "src": "5768:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "5783:15:13", + "src": "5783:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "5797:1:13", + "src": "5797:1:163", "type": "", "value": "0" }, @@ -3852,14 +3852,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "5787:6:13", + "src": "5787:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "5812:63:13", + "src": "5812:63:163", "value": { "arguments": [ { @@ -3867,41 +3867,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "5847:9:13" + "src": "5847:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "5858:6:13" + "src": "5858:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "5843:3:13" + "src": "5843:3:163" }, "nodeType": "YulFunctionCall", - "src": "5843:22:13" + "src": "5843:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "5867:7:13" + "src": "5867:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "5822:20:13" + "src": "5822:20:163" }, "nodeType": "YulFunctionCall", - "src": "5822:53:13" + "src": "5822:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "5812:6:13" + "src": "5812:6:163" } ] } @@ -3915,13 +3915,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "5599:9:13", + "src": "5599:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "5610:7:13", + "src": "5610:7:163", "type": "" } ], @@ -3929,16 +3929,16 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "5622:6:13", + "src": "5622:6:163", "type": "" } ], - "src": "5563:329:13" + "src": "5563:329:163" }, { "body": { "nodeType": "YulBlock", - "src": "5963:53:13", + "src": "5963:53:163", "statements": [ { "expression": { @@ -3946,35 +3946,35 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "5980:3:13" + "src": "5980:3:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6003:5:13" + "src": "6003:5:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "5985:17:13" + "src": "5985:17:163" }, "nodeType": "YulFunctionCall", - "src": "5985:24:13" + "src": "5985:24:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "5973:6:13" + "src": "5973:6:163" }, "nodeType": "YulFunctionCall", - "src": "5973:37:13" + "src": "5973:37:163" }, "nodeType": "YulExpressionStatement", - "src": "5973:37:13" + "src": "5973:37:163" } ] }, @@ -3984,37 +3984,37 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "5951:5:13", + "src": "5951:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "5958:3:13", + "src": "5958:3:163", "type": "" } ], - "src": "5898:118:13" + "src": "5898:118:163" }, { "body": { "nodeType": "YulBlock", - "src": "6120:124:13", + "src": "6120:124:163", "statements": [ { "nodeType": "YulAssignment", - "src": "6130:26:13", + "src": "6130:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6142:9:13" + "src": "6142:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6153:2:13", + "src": "6153:2:163", "type": "", "value": "32" } @@ -4022,16 +4022,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6138:3:13" + "src": "6138:3:163" }, "nodeType": "YulFunctionCall", - "src": "6138:18:13" + "src": "6138:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "6130:4:13" + "src": "6130:4:163" } ] }, @@ -4041,19 +4041,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "6210:6:13" + "src": "6210:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6223:9:13" + "src": "6223:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6234:1:13", + "src": "6234:1:163", "type": "", "value": "0" } @@ -4061,22 +4061,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6219:3:13" + "src": "6219:3:163" }, "nodeType": "YulFunctionCall", - "src": "6219:17:13" + "src": "6219:17:163" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "6166:43:13" + "src": "6166:43:163" }, "nodeType": "YulFunctionCall", - "src": "6166:71:13" + "src": "6166:71:163" }, "nodeType": "YulExpressionStatement", - "src": "6166:71:13" + "src": "6166:71:163" } ] }, @@ -4086,13 +4086,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "6092:9:13", + "src": "6092:9:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "6104:6:13", + "src": "6104:6:163", "type": "" } ], @@ -4100,21 +4100,21 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "6115:4:13", + "src": "6115:4:163", "type": "" } ], - "src": "6022:222:13" + "src": "6022:222:163" }, { "body": { "nodeType": "YulBlock", - "src": "6290:76:13", + "src": "6290:76:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6344:16:13", + "src": "6344:16:163", "statements": [ { "expression": { @@ -4122,14 +4122,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "6353:1:13", + "src": "6353:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6356:1:13", + "src": "6356:1:163", "type": "", "value": "0" } @@ -4137,13 +4137,13 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "6346:6:13" + "src": "6346:6:163" }, "nodeType": "YulFunctionCall", - "src": "6346:12:13" + "src": "6346:12:163" }, "nodeType": "YulExpressionStatement", - "src": "6346:12:13" + "src": "6346:12:163" } ] }, @@ -4154,44 +4154,44 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "6313:5:13" + "src": "6313:5:163" }, { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6335:5:13" + "src": "6335:5:163" } ], "functionName": { "name": "cleanup_t_bool", "nodeType": "YulIdentifier", - "src": "6320:14:13" + "src": "6320:14:163" }, "nodeType": "YulFunctionCall", - "src": "6320:21:13" + "src": "6320:21:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "6310:2:13" + "src": "6310:2:163" }, "nodeType": "YulFunctionCall", - "src": "6310:32:13" + "src": "6310:32:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "6303:6:13" + "src": "6303:6:163" }, "nodeType": "YulFunctionCall", - "src": "6303:40:13" + "src": "6303:40:163" }, "nodeType": "YulIf", - "src": "6300:60:13" + "src": "6300:60:163" } ] }, @@ -4201,41 +4201,41 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6283:5:13", + "src": "6283:5:163", "type": "" } ], - "src": "6250:116:13" + "src": "6250:116:163" }, { "body": { "nodeType": "YulBlock", - "src": "6421:84:13", + "src": "6421:84:163", "statements": [ { "nodeType": "YulAssignment", - "src": "6431:29:13", + "src": "6431:29:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "6453:6:13" + "src": "6453:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "6440:12:13" + "src": "6440:12:163" }, "nodeType": "YulFunctionCall", - "src": "6440:20:13" + "src": "6440:20:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "6431:5:13" + "src": "6431:5:163" } ] }, @@ -4245,19 +4245,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "6493:5:13" + "src": "6493:5:163" } ], "functionName": { "name": "validator_revert_t_bool", "nodeType": "YulIdentifier", - "src": "6469:23:13" + "src": "6469:23:163" }, "nodeType": "YulFunctionCall", - "src": "6469:30:13" + "src": "6469:30:163" }, "nodeType": "YulExpressionStatement", - "src": "6469:30:13" + "src": "6469:30:163" } ] }, @@ -4267,13 +4267,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6399:6:13", + "src": "6399:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "6407:3:13", + "src": "6407:3:163", "type": "" } ], @@ -4281,21 +4281,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "6415:5:13", + "src": "6415:5:163", "type": "" } ], - "src": "6372:133:13" + "src": "6372:133:163" }, { "body": { "nodeType": "YulBlock", - "src": "6591:388:13", + "src": "6591:388:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "6637:83:13", + "src": "6637:83:163", "statements": [ { "expression": { @@ -4303,13 +4303,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "6639:77:13" + "src": "6639:77:163" }, "nodeType": "YulFunctionCall", - "src": "6639:79:13" + "src": "6639:79:163" }, "nodeType": "YulExpressionStatement", - "src": "6639:79:13" + "src": "6639:79:163" } ] }, @@ -4320,26 +4320,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6612:7:13" + "src": "6612:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6621:9:13" + "src": "6621:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "6608:3:13" + "src": "6608:3:163" }, "nodeType": "YulFunctionCall", - "src": "6608:23:13" + "src": "6608:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "6633:2:13", + "src": "6633:2:163", "type": "", "value": "64" } @@ -4347,25 +4347,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "6604:3:13" + "src": "6604:3:163" }, "nodeType": "YulFunctionCall", - "src": "6604:32:13" + "src": "6604:32:163" }, "nodeType": "YulIf", - "src": "6601:119:13" + "src": "6601:119:163" }, { "nodeType": "YulBlock", - "src": "6730:117:13", + "src": "6730:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6745:15:13", + "src": "6745:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6759:1:13", + "src": "6759:1:163", "type": "", "value": "0" }, @@ -4373,14 +4373,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6749:6:13", + "src": "6749:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6774:63:13", + "src": "6774:63:163", "value": { "arguments": [ { @@ -4388,41 +4388,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6809:9:13" + "src": "6809:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "6820:6:13" + "src": "6820:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6805:3:13" + "src": "6805:3:163" }, "nodeType": "YulFunctionCall", - "src": "6805:22:13" + "src": "6805:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6829:7:13" + "src": "6829:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "6784:20:13" + "src": "6784:20:163" }, "nodeType": "YulFunctionCall", - "src": "6784:53:13" + "src": "6784:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "6774:6:13" + "src": "6774:6:163" } ] } @@ -4430,15 +4430,15 @@ }, { "nodeType": "YulBlock", - "src": "6857:115:13", + "src": "6857:115:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "6872:16:13", + "src": "6872:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "6886:2:13", + "src": "6886:2:163", "type": "", "value": "32" }, @@ -4446,14 +4446,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "6876:6:13", + "src": "6876:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "6902:60:13", + "src": "6902:60:163", "value": { "arguments": [ { @@ -4461,41 +4461,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "6934:9:13" + "src": "6934:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "6945:6:13" + "src": "6945:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "6930:3:13" + "src": "6930:3:163" }, "nodeType": "YulFunctionCall", - "src": "6930:22:13" + "src": "6930:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "6954:7:13" + "src": "6954:7:163" } ], "functionName": { "name": "abi_decode_t_bool", "nodeType": "YulIdentifier", - "src": "6912:17:13" + "src": "6912:17:163" }, "nodeType": "YulFunctionCall", - "src": "6912:50:13" + "src": "6912:50:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "6902:6:13" + "src": "6902:6:163" } ] } @@ -4509,13 +4509,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "6553:9:13", + "src": "6553:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "6564:7:13", + "src": "6564:7:163", "type": "" } ], @@ -4523,22 +4523,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "6576:6:13", + "src": "6576:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "6584:6:13", + "src": "6584:6:163", "type": "" } ], - "src": "6511:468:13" + "src": "6511:468:163" }, { "body": { "nodeType": "YulBlock", - "src": "7074:28:13", + "src": "7074:28:163", "statements": [ { "expression": { @@ -4546,14 +4546,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7091:1:13", + "src": "7091:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7094:1:13", + "src": "7094:1:163", "type": "", "value": "0" } @@ -4561,24 +4561,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7084:6:13" + "src": "7084:6:163" }, "nodeType": "YulFunctionCall", - "src": "7084:12:13" + "src": "7084:12:163" }, "nodeType": "YulExpressionStatement", - "src": "7084:12:13" + "src": "7084:12:163" } ] }, "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulFunctionDefinition", - "src": "6985:117:13" + "src": "6985:117:163" }, { "body": { "nodeType": "YulBlock", - "src": "7197:28:13", + "src": "7197:28:163", "statements": [ { "expression": { @@ -4586,14 +4586,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7214:1:13", + "src": "7214:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7217:1:13", + "src": "7217:1:163", "type": "", "value": "0" } @@ -4601,24 +4601,24 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7207:6:13" + "src": "7207:6:163" }, "nodeType": "YulFunctionCall", - "src": "7207:12:13" + "src": "7207:12:163" }, "nodeType": "YulExpressionStatement", - "src": "7207:12:13" + "src": "7207:12:163" } ] }, "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulFunctionDefinition", - "src": "7108:117:13" + "src": "7108:117:163" }, { "body": { "nodeType": "YulBlock", - "src": "7259:152:13", + "src": "7259:152:163", "statements": [ { "expression": { @@ -4626,14 +4626,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7276:1:13", + "src": "7276:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7279:77:13", + "src": "7279:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -4641,13 +4641,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7269:6:13" + "src": "7269:6:163" }, "nodeType": "YulFunctionCall", - "src": "7269:88:13" + "src": "7269:88:163" }, "nodeType": "YulExpressionStatement", - "src": "7269:88:13" + "src": "7269:88:163" }, { "expression": { @@ -4655,14 +4655,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7373:1:13", + "src": "7373:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7376:4:13", + "src": "7376:4:163", "type": "", "value": "0x41" } @@ -4670,13 +4670,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7366:6:13" + "src": "7366:6:163" }, "nodeType": "YulFunctionCall", - "src": "7366:15:13" + "src": "7366:15:163" }, "nodeType": "YulExpressionStatement", - "src": "7366:15:13" + "src": "7366:15:163" }, { "expression": { @@ -4684,14 +4684,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7397:1:13", + "src": "7397:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7400:4:13", + "src": "7400:4:163", "type": "", "value": "0x24" } @@ -4699,65 +4699,65 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "7390:6:13" + "src": "7390:6:163" }, "nodeType": "YulFunctionCall", - "src": "7390:15:13" + "src": "7390:15:163" }, "nodeType": "YulExpressionStatement", - "src": "7390:15:13" + "src": "7390:15:163" } ] }, "name": "panic_error_0x41", "nodeType": "YulFunctionDefinition", - "src": "7231:180:13" + "src": "7231:180:163" }, { "body": { "nodeType": "YulBlock", - "src": "7460:238:13", + "src": "7460:238:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "7470:58:13", + "src": "7470:58:163", "value": { "arguments": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "7492:6:13" + "src": "7492:6:163" }, { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "7522:4:13" + "src": "7522:4:163" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "7500:21:13" + "src": "7500:21:163" }, "nodeType": "YulFunctionCall", - "src": "7500:27:13" + "src": "7500:27:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "7488:3:13" + "src": "7488:3:163" }, "nodeType": "YulFunctionCall", - "src": "7488:40:13" + "src": "7488:40:163" }, "variables": [ { "name": "newFreePtr", "nodeType": "YulTypedName", - "src": "7474:10:13", + "src": "7474:10:163", "type": "" } ] @@ -4765,7 +4765,7 @@ { "body": { "nodeType": "YulBlock", - "src": "7639:22:13", + "src": "7639:22:163", "statements": [ { "expression": { @@ -4773,13 +4773,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "7641:16:13" + "src": "7641:16:163" }, "nodeType": "YulFunctionCall", - "src": "7641:18:13" + "src": "7641:18:163" }, "nodeType": "YulExpressionStatement", - "src": "7641:18:13" + "src": "7641:18:163" } ] }, @@ -4790,12 +4790,12 @@ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "7582:10:13" + "src": "7582:10:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7594:18:13", + "src": "7594:18:163", "type": "", "value": "0xffffffffffffffff" } @@ -4803,43 +4803,43 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "7579:2:13" + "src": "7579:2:163" }, "nodeType": "YulFunctionCall", - "src": "7579:34:13" + "src": "7579:34:163" }, { "arguments": [ { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "7618:10:13" + "src": "7618:10:163" }, { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "7630:6:13" + "src": "7630:6:163" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "7615:2:13" + "src": "7615:2:163" }, "nodeType": "YulFunctionCall", - "src": "7615:22:13" + "src": "7615:22:163" } ], "functionName": { "name": "or", "nodeType": "YulIdentifier", - "src": "7576:2:13" + "src": "7576:2:163" }, "nodeType": "YulFunctionCall", - "src": "7576:62:13" + "src": "7576:62:163" }, "nodeType": "YulIf", - "src": "7573:88:13" + "src": "7573:88:163" }, { "expression": { @@ -4847,26 +4847,26 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "7677:2:13", + "src": "7677:2:163", "type": "", "value": "64" }, { "name": "newFreePtr", "nodeType": "YulIdentifier", - "src": "7681:10:13" + "src": "7681:10:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "7670:6:13" + "src": "7670:6:163" }, "nodeType": "YulFunctionCall", - "src": "7670:22:13" + "src": "7670:22:163" }, "nodeType": "YulExpressionStatement", - "src": "7670:22:13" + "src": "7670:22:163" } ] }, @@ -4876,41 +4876,41 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "7446:6:13", + "src": "7446:6:163", "type": "" }, { "name": "size", "nodeType": "YulTypedName", - "src": "7454:4:13", + "src": "7454:4:163", "type": "" } ], - "src": "7417:281:13" + "src": "7417:281:163" }, { "body": { "nodeType": "YulBlock", - "src": "7745:88:13", + "src": "7745:88:163", "statements": [ { "nodeType": "YulAssignment", - "src": "7755:30:13", + "src": "7755:30:163", "value": { "arguments": [], "functionName": { "name": "allocate_unbounded", "nodeType": "YulIdentifier", - "src": "7765:18:13" + "src": "7765:18:163" }, "nodeType": "YulFunctionCall", - "src": "7765:20:13" + "src": "7765:20:163" }, "variableNames": [ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "7755:6:13" + "src": "7755:6:163" } ] }, @@ -4920,24 +4920,24 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "7814:6:13" + "src": "7814:6:163" }, { "name": "size", "nodeType": "YulIdentifier", - "src": "7822:4:13" + "src": "7822:4:163" } ], "functionName": { "name": "finalize_allocation", "nodeType": "YulIdentifier", - "src": "7794:19:13" + "src": "7794:19:163" }, "nodeType": "YulFunctionCall", - "src": "7794:33:13" + "src": "7794:33:163" }, "nodeType": "YulExpressionStatement", - "src": "7794:33:13" + "src": "7794:33:163" } ] }, @@ -4947,7 +4947,7 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "7729:4:13", + "src": "7729:4:163", "type": "" } ], @@ -4955,21 +4955,21 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "7738:6:13", + "src": "7738:6:163", "type": "" } ], - "src": "7704:129:13" + "src": "7704:129:163" }, { "body": { "nodeType": "YulBlock", - "src": "7905:241:13", + "src": "7905:241:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "8010:22:13", + "src": "8010:22:163", "statements": [ { "expression": { @@ -4977,13 +4977,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "8012:16:13" + "src": "8012:16:163" }, "nodeType": "YulFunctionCall", - "src": "8012:18:13" + "src": "8012:18:163" }, "nodeType": "YulExpressionStatement", - "src": "8012:18:13" + "src": "8012:18:163" } ] }, @@ -4992,12 +4992,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "7982:6:13" + "src": "7982:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "7990:18:13", + "src": "7990:18:163", "type": "", "value": "0xffffffffffffffff" } @@ -5005,55 +5005,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "7979:2:13" + "src": "7979:2:163" }, "nodeType": "YulFunctionCall", - "src": "7979:30:13" + "src": "7979:30:163" }, "nodeType": "YulIf", - "src": "7976:56:13" + "src": "7976:56:163" }, { "nodeType": "YulAssignment", - "src": "8042:37:13", + "src": "8042:37:163", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "8072:6:13" + "src": "8072:6:163" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "8050:21:13" + "src": "8050:21:163" }, "nodeType": "YulFunctionCall", - "src": "8050:29:13" + "src": "8050:29:163" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "8042:4:13" + "src": "8042:4:163" } ] }, { "nodeType": "YulAssignment", - "src": "8116:23:13", + "src": "8116:23:163", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "8128:4:13" + "src": "8128:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8134:4:13", + "src": "8134:4:163", "type": "", "value": "0x20" } @@ -5061,16 +5061,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8124:3:13" + "src": "8124:3:163" }, "nodeType": "YulFunctionCall", - "src": "8124:15:13" + "src": "8124:15:163" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "8116:4:13" + "src": "8116:4:163" } ] } @@ -5082,7 +5082,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "7889:6:13", + "src": "7889:6:163", "type": "" } ], @@ -5090,16 +5090,16 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "7900:4:13", + "src": "7900:4:163", "type": "" } ], - "src": "7839:307:13" + "src": "7839:307:163" }, { "body": { "nodeType": "YulBlock", - "src": "8203:103:13", + "src": "8203:103:163", "statements": [ { "expression": { @@ -5107,29 +5107,29 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "8226:3:13" + "src": "8226:3:163" }, { "name": "src", "nodeType": "YulIdentifier", - "src": "8231:3:13" + "src": "8231:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8236:6:13" + "src": "8236:6:163" } ], "functionName": { "name": "calldatacopy", "nodeType": "YulIdentifier", - "src": "8213:12:13" + "src": "8213:12:163" }, "nodeType": "YulFunctionCall", - "src": "8213:30:13" + "src": "8213:30:163" }, "nodeType": "YulExpressionStatement", - "src": "8213:30:13" + "src": "8213:30:163" }, { "expression": { @@ -5139,26 +5139,26 @@ { "name": "dst", "nodeType": "YulIdentifier", - "src": "8284:3:13" + "src": "8284:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8289:6:13" + "src": "8289:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8280:3:13" + "src": "8280:3:163" }, "nodeType": "YulFunctionCall", - "src": "8280:16:13" + "src": "8280:16:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8298:1:13", + "src": "8298:1:163", "type": "", "value": "0" } @@ -5166,13 +5166,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8273:6:13" + "src": "8273:6:163" }, "nodeType": "YulFunctionCall", - "src": "8273:27:13" + "src": "8273:27:163" }, "nodeType": "YulExpressionStatement", - "src": "8273:27:13" + "src": "8273:27:163" } ] }, @@ -5182,32 +5182,32 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "8185:3:13", + "src": "8185:3:163", "type": "" }, { "name": "dst", "nodeType": "YulTypedName", - "src": "8190:3:13", + "src": "8190:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "8195:6:13", + "src": "8195:6:163", "type": "" } ], - "src": "8152:154:13" + "src": "8152:154:163" }, { "body": { "nodeType": "YulBlock", - "src": "8395:327:13", + "src": "8395:327:163", "statements": [ { "nodeType": "YulAssignment", - "src": "8405:74:13", + "src": "8405:74:163", "value": { "arguments": [ { @@ -5215,31 +5215,31 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "8471:6:13" + "src": "8471:6:163" } ], "functionName": { "name": "array_allocation_size_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "8430:40:13" + "src": "8430:40:163" }, "nodeType": "YulFunctionCall", - "src": "8430:48:13" + "src": "8430:48:163" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "8414:15:13" + "src": "8414:15:163" }, "nodeType": "YulFunctionCall", - "src": "8414:65:13" + "src": "8414:65:163" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "8405:5:13" + "src": "8405:5:163" } ] }, @@ -5249,39 +5249,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "8495:5:13" + "src": "8495:5:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8502:6:13" + "src": "8502:6:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "8488:6:13" + "src": "8488:6:163" }, "nodeType": "YulFunctionCall", - "src": "8488:21:13" + "src": "8488:21:163" }, "nodeType": "YulExpressionStatement", - "src": "8488:21:13" + "src": "8488:21:163" }, { "nodeType": "YulVariableDeclaration", - "src": "8518:27:13", + "src": "8518:27:163", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "8533:5:13" + "src": "8533:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8540:4:13", + "src": "8540:4:163", "type": "", "value": "0x20" } @@ -5289,16 +5289,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8529:3:13" + "src": "8529:3:163" }, "nodeType": "YulFunctionCall", - "src": "8529:16:13" + "src": "8529:16:163" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "8522:3:13", + "src": "8522:3:163", "type": "" } ] @@ -5306,7 +5306,7 @@ { "body": { "nodeType": "YulBlock", - "src": "8583:83:13", + "src": "8583:83:163", "statements": [ { "expression": { @@ -5314,13 +5314,13 @@ "functionName": { "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulIdentifier", - "src": "8585:77:13" + "src": "8585:77:163" }, "nodeType": "YulFunctionCall", - "src": "8585:79:13" + "src": "8585:79:163" }, "nodeType": "YulExpressionStatement", - "src": "8585:79:13" + "src": "8585:79:163" } ] }, @@ -5331,38 +5331,38 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "8564:3:13" + "src": "8564:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8569:6:13" + "src": "8569:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8560:3:13" + "src": "8560:3:163" }, "nodeType": "YulFunctionCall", - "src": "8560:16:13" + "src": "8560:16:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "8578:3:13" + "src": "8578:3:163" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "8557:2:13" + "src": "8557:2:163" }, "nodeType": "YulFunctionCall", - "src": "8557:25:13" + "src": "8557:25:163" }, "nodeType": "YulIf", - "src": "8554:112:13" + "src": "8554:112:163" }, { "expression": { @@ -5370,29 +5370,29 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "8699:3:13" + "src": "8699:3:163" }, { "name": "dst", "nodeType": "YulIdentifier", - "src": "8704:3:13" + "src": "8704:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "8709:6:13" + "src": "8709:6:163" } ], "functionName": { "name": "copy_calldata_to_memory", "nodeType": "YulIdentifier", - "src": "8675:23:13" + "src": "8675:23:163" }, "nodeType": "YulFunctionCall", - "src": "8675:41:13" + "src": "8675:41:163" }, "nodeType": "YulExpressionStatement", - "src": "8675:41:13" + "src": "8675:41:163" } ] }, @@ -5402,19 +5402,19 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "8368:3:13", + "src": "8368:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "8373:6:13", + "src": "8373:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "8381:3:13", + "src": "8381:3:163", "type": "" } ], @@ -5422,21 +5422,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "8389:5:13", + "src": "8389:5:163", "type": "" } ], - "src": "8312:410:13" + "src": "8312:410:163" }, { "body": { "nodeType": "YulBlock", - "src": "8802:277:13", + "src": "8802:277:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "8851:83:13", + "src": "8851:83:163", "statements": [ { "expression": { @@ -5444,13 +5444,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "8853:77:13" + "src": "8853:77:163" }, "nodeType": "YulFunctionCall", - "src": "8853:79:13" + "src": "8853:79:163" }, "nodeType": "YulExpressionStatement", - "src": "8853:79:13" + "src": "8853:79:163" } ] }, @@ -5463,12 +5463,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "8830:6:13" + "src": "8830:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "8838:4:13", + "src": "8838:4:163", "type": "", "value": "0x1f" } @@ -5476,68 +5476,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "8826:3:13" + "src": "8826:3:163" }, "nodeType": "YulFunctionCall", - "src": "8826:17:13" + "src": "8826:17:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "8845:3:13" + "src": "8845:3:163" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "8822:3:13" + "src": "8822:3:163" }, "nodeType": "YulFunctionCall", - "src": "8822:27:13" + "src": "8822:27:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "8815:6:13" + "src": "8815:6:163" }, "nodeType": "YulFunctionCall", - "src": "8815:35:13" + "src": "8815:35:163" }, "nodeType": "YulIf", - "src": "8812:122:13" + "src": "8812:122:163" }, { "nodeType": "YulVariableDeclaration", - "src": "8943:34:13", + "src": "8943:34:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "8970:6:13" + "src": "8970:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "8957:12:13" + "src": "8957:12:163" }, "nodeType": "YulFunctionCall", - "src": "8957:20:13" + "src": "8957:20:163" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "8947:6:13", + "src": "8947:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "8986:87:13", + "src": "8986:87:163", "value": { "arguments": [ { @@ -5545,12 +5545,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "9046:6:13" + "src": "9046:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9054:4:13", + "src": "9054:4:163", "type": "", "value": "0x20" } @@ -5558,35 +5558,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9042:3:13" + "src": "9042:3:163" }, "nodeType": "YulFunctionCall", - "src": "9042:17:13" + "src": "9042:17:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "9061:6:13" + "src": "9061:6:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "9069:3:13" + "src": "9069:3:163" } ], "functionName": { "name": "abi_decode_available_length_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "8995:46:13" + "src": "8995:46:163" }, "nodeType": "YulFunctionCall", - "src": "8995:78:13" + "src": "8995:78:163" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "8986:5:13" + "src": "8986:5:163" } ] } @@ -5598,13 +5598,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "8780:6:13", + "src": "8780:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "8788:3:13", + "src": "8788:3:163", "type": "" } ], @@ -5612,21 +5612,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "8796:5:13", + "src": "8796:5:163", "type": "" } ], - "src": "8741:338:13" + "src": "8741:338:163" }, { "body": { "nodeType": "YulBlock", - "src": "9211:817:13", + "src": "9211:817:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "9258:83:13", + "src": "9258:83:163", "statements": [ { "expression": { @@ -5634,13 +5634,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "9260:77:13" + "src": "9260:77:163" }, "nodeType": "YulFunctionCall", - "src": "9260:79:13" + "src": "9260:79:163" }, "nodeType": "YulExpressionStatement", - "src": "9260:79:13" + "src": "9260:79:163" } ] }, @@ -5651,26 +5651,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9232:7:13" + "src": "9232:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9241:9:13" + "src": "9241:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "9228:3:13" + "src": "9228:3:163" }, "nodeType": "YulFunctionCall", - "src": "9228:23:13" + "src": "9228:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9253:3:13", + "src": "9253:3:163", "type": "", "value": "128" } @@ -5678,25 +5678,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "9224:3:13" + "src": "9224:3:163" }, "nodeType": "YulFunctionCall", - "src": "9224:33:13" + "src": "9224:33:163" }, "nodeType": "YulIf", - "src": "9221:120:13" + "src": "9221:120:163" }, { "nodeType": "YulBlock", - "src": "9351:117:13", + "src": "9351:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "9366:15:13", + "src": "9366:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "9380:1:13", + "src": "9380:1:163", "type": "", "value": "0" }, @@ -5704,14 +5704,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "9370:6:13", + "src": "9370:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "9395:63:13", + "src": "9395:63:163", "value": { "arguments": [ { @@ -5719,41 +5719,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9430:9:13" + "src": "9430:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "9441:6:13" + "src": "9441:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9426:3:13" + "src": "9426:3:163" }, "nodeType": "YulFunctionCall", - "src": "9426:22:13" + "src": "9426:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9450:7:13" + "src": "9450:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "9405:20:13" + "src": "9405:20:163" }, "nodeType": "YulFunctionCall", - "src": "9405:53:13" + "src": "9405:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "9395:6:13" + "src": "9395:6:163" } ] } @@ -5761,15 +5761,15 @@ }, { "nodeType": "YulBlock", - "src": "9478:118:13", + "src": "9478:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "9493:16:13", + "src": "9493:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "9507:2:13", + "src": "9507:2:163", "type": "", "value": "32" }, @@ -5777,14 +5777,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "9497:6:13", + "src": "9497:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "9523:63:13", + "src": "9523:63:163", "value": { "arguments": [ { @@ -5792,41 +5792,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9558:9:13" + "src": "9558:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "9569:6:13" + "src": "9569:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9554:3:13" + "src": "9554:3:163" }, "nodeType": "YulFunctionCall", - "src": "9554:22:13" + "src": "9554:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9578:7:13" + "src": "9578:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "9533:20:13" + "src": "9533:20:163" }, "nodeType": "YulFunctionCall", - "src": "9533:53:13" + "src": "9533:53:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "9523:6:13" + "src": "9523:6:163" } ] } @@ -5834,15 +5834,15 @@ }, { "nodeType": "YulBlock", - "src": "9606:118:13", + "src": "9606:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "9621:16:13", + "src": "9621:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "9635:2:13", + "src": "9635:2:163", "type": "", "value": "64" }, @@ -5850,14 +5850,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "9625:6:13", + "src": "9625:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "9651:63:13", + "src": "9651:63:163", "value": { "arguments": [ { @@ -5865,41 +5865,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9686:9:13" + "src": "9686:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "9697:6:13" + "src": "9697:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9682:3:13" + "src": "9682:3:163" }, "nodeType": "YulFunctionCall", - "src": "9682:22:13" + "src": "9682:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "9706:7:13" + "src": "9706:7:163" } ], "functionName": { "name": "abi_decode_t_uint256", "nodeType": "YulIdentifier", - "src": "9661:20:13" + "src": "9661:20:163" }, "nodeType": "YulFunctionCall", - "src": "9661:53:13" + "src": "9661:53:163" }, "variableNames": [ { "name": "value2", "nodeType": "YulIdentifier", - "src": "9651:6:13" + "src": "9651:6:163" } ] } @@ -5907,11 +5907,11 @@ }, { "nodeType": "YulBlock", - "src": "9734:287:13", + "src": "9734:287:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "9749:46:13", + "src": "9749:46:163", "value": { "arguments": [ { @@ -5919,12 +5919,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9780:9:13" + "src": "9780:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9791:2:13", + "src": "9791:2:163", "type": "", "value": "96" } @@ -5932,25 +5932,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9776:3:13" + "src": "9776:3:163" }, "nodeType": "YulFunctionCall", - "src": "9776:18:13" + "src": "9776:18:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "9763:12:13" + "src": "9763:12:163" }, "nodeType": "YulFunctionCall", - "src": "9763:32:13" + "src": "9763:32:163" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "9753:6:13", + "src": "9753:6:163", "type": "" } ] @@ -5958,7 +5958,7 @@ { "body": { "nodeType": "YulBlock", - "src": "9842:83:13", + "src": "9842:83:163", "statements": [ { "expression": { @@ -5966,13 +5966,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "9844:77:13" + "src": "9844:77:163" }, "nodeType": "YulFunctionCall", - "src": "9844:79:13" + "src": "9844:79:163" }, "nodeType": "YulExpressionStatement", - "src": "9844:79:13" + "src": "9844:79:163" } ] }, @@ -5981,12 +5981,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "9814:6:13" + "src": "9814:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "9822:18:13", + "src": "9822:18:163", "type": "", "value": "0xffffffffffffffff" } @@ -5994,17 +5994,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "9811:2:13" + "src": "9811:2:163" }, "nodeType": "YulFunctionCall", - "src": "9811:30:13" + "src": "9811:30:163" }, "nodeType": "YulIf", - "src": "9808:117:13" + "src": "9808:117:163" }, { "nodeType": "YulAssignment", - "src": "9939:72:13", + "src": "9939:72:163", "value": { "arguments": [ { @@ -6012,41 +6012,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "9983:9:13" + "src": "9983:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "9994:6:13" + "src": "9994:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "9979:3:13" + "src": "9979:3:163" }, "nodeType": "YulFunctionCall", - "src": "9979:22:13" + "src": "9979:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10003:7:13" + "src": "10003:7:163" } ], "functionName": { "name": "abi_decode_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "9949:29:13" + "src": "9949:29:163" }, "nodeType": "YulFunctionCall", - "src": "9949:62:13" + "src": "9949:62:163" }, "variableNames": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "9939:6:13" + "src": "9939:6:163" } ] } @@ -6060,13 +6060,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "9157:9:13", + "src": "9157:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "9168:7:13", + "src": "9168:7:163", "type": "" } ], @@ -6074,39 +6074,39 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "9180:6:13", + "src": "9180:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "9188:6:13", + "src": "9188:6:163", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "9196:6:13", + "src": "9196:6:163", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "9204:6:13", + "src": "9204:6:163", "type": "" } ], - "src": "9085:943:13" + "src": "9085:943:163" }, { "body": { "nodeType": "YulBlock", - "src": "10117:391:13", + "src": "10117:391:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "10163:83:13", + "src": "10163:83:163", "statements": [ { "expression": { @@ -6114,13 +6114,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "10165:77:13" + "src": "10165:77:163" }, "nodeType": "YulFunctionCall", - "src": "10165:79:13" + "src": "10165:79:163" }, "nodeType": "YulExpressionStatement", - "src": "10165:79:13" + "src": "10165:79:163" } ] }, @@ -6131,26 +6131,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10138:7:13" + "src": "10138:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10147:9:13" + "src": "10147:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "10134:3:13" + "src": "10134:3:163" }, "nodeType": "YulFunctionCall", - "src": "10134:23:13" + "src": "10134:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10159:2:13", + "src": "10159:2:163", "type": "", "value": "64" } @@ -6158,25 +6158,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "10130:3:13" + "src": "10130:3:163" }, "nodeType": "YulFunctionCall", - "src": "10130:32:13" + "src": "10130:32:163" }, "nodeType": "YulIf", - "src": "10127:119:13" + "src": "10127:119:163" }, { "nodeType": "YulBlock", - "src": "10256:117:13", + "src": "10256:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "10271:15:13", + "src": "10271:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "10285:1:13", + "src": "10285:1:163", "type": "", "value": "0" }, @@ -6184,14 +6184,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "10275:6:13", + "src": "10275:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "10300:63:13", + "src": "10300:63:163", "value": { "arguments": [ { @@ -6199,41 +6199,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10335:9:13" + "src": "10335:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "10346:6:13" + "src": "10346:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10331:3:13" + "src": "10331:3:163" }, "nodeType": "YulFunctionCall", - "src": "10331:22:13" + "src": "10331:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10355:7:13" + "src": "10355:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "10310:20:13" + "src": "10310:20:163" }, "nodeType": "YulFunctionCall", - "src": "10310:53:13" + "src": "10310:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "10300:6:13" + "src": "10300:6:163" } ] } @@ -6241,15 +6241,15 @@ }, { "nodeType": "YulBlock", - "src": "10383:118:13", + "src": "10383:118:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "10398:16:13", + "src": "10398:16:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "10412:2:13", + "src": "10412:2:163", "type": "", "value": "32" }, @@ -6257,14 +6257,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "10402:6:13", + "src": "10402:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "10428:63:13", + "src": "10428:63:163", "value": { "arguments": [ { @@ -6272,41 +6272,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "10463:9:13" + "src": "10463:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "10474:6:13" + "src": "10474:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10459:3:13" + "src": "10459:3:163" }, "nodeType": "YulFunctionCall", - "src": "10459:22:13" + "src": "10459:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "10483:7:13" + "src": "10483:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "10438:20:13" + "src": "10438:20:163" }, "nodeType": "YulFunctionCall", - "src": "10438:53:13" + "src": "10438:53:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "10428:6:13" + "src": "10428:6:163" } ] } @@ -6320,13 +6320,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "10079:9:13", + "src": "10079:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "10090:7:13", + "src": "10090:7:163", "type": "" } ], @@ -6334,27 +6334,27 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "10102:6:13", + "src": "10102:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "10110:6:13", + "src": "10110:6:163", "type": "" } ], - "src": "10034:474:13" + "src": "10034:474:163" }, { "body": { "nodeType": "YulBlock", - "src": "10581:241:13", + "src": "10581:241:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "10686:22:13", + "src": "10686:22:163", "statements": [ { "expression": { @@ -6362,13 +6362,13 @@ "functionName": { "name": "panic_error_0x41", "nodeType": "YulIdentifier", - "src": "10688:16:13" + "src": "10688:16:163" }, "nodeType": "YulFunctionCall", - "src": "10688:18:13" + "src": "10688:18:163" }, "nodeType": "YulExpressionStatement", - "src": "10688:18:13" + "src": "10688:18:163" } ] }, @@ -6377,12 +6377,12 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "10658:6:13" + "src": "10658:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10666:18:13", + "src": "10666:18:163", "type": "", "value": "0xffffffffffffffff" } @@ -6390,55 +6390,55 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "10655:2:13" + "src": "10655:2:163" }, "nodeType": "YulFunctionCall", - "src": "10655:30:13" + "src": "10655:30:163" }, "nodeType": "YulIf", - "src": "10652:56:13" + "src": "10652:56:163" }, { "nodeType": "YulAssignment", - "src": "10718:37:13", + "src": "10718:37:163", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "10748:6:13" + "src": "10748:6:163" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "10726:21:13" + "src": "10726:21:163" }, "nodeType": "YulFunctionCall", - "src": "10726:29:13" + "src": "10726:29:163" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "10718:4:13" + "src": "10718:4:163" } ] }, { "nodeType": "YulAssignment", - "src": "10792:23:13", + "src": "10792:23:163", "value": { "arguments": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "10804:4:13" + "src": "10804:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "10810:4:13", + "src": "10810:4:163", "type": "", "value": "0x20" } @@ -6446,16 +6446,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "10800:3:13" + "src": "10800:3:163" }, "nodeType": "YulFunctionCall", - "src": "10800:15:13" + "src": "10800:15:163" }, "variableNames": [ { "name": "size", "nodeType": "YulIdentifier", - "src": "10792:4:13" + "src": "10792:4:163" } ] } @@ -6467,7 +6467,7 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "10565:6:13", + "src": "10565:6:163", "type": "" } ], @@ -6475,20 +6475,20 @@ { "name": "size", "nodeType": "YulTypedName", - "src": "10576:4:13", + "src": "10576:4:163", "type": "" } ], - "src": "10514:308:13" + "src": "10514:308:163" }, { "body": { "nodeType": "YulBlock", - "src": "10912:328:13", + "src": "10912:328:163", "statements": [ { "nodeType": "YulAssignment", - "src": "10922:75:13", + "src": "10922:75:163", "value": { "arguments": [ { @@ -6496,31 +6496,31 @@ { "name": "length", "nodeType": "YulIdentifier", - "src": "10989:6:13" + "src": "10989:6:163" } ], "functionName": { "name": "array_allocation_size_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "10947:41:13" + "src": "10947:41:163" }, "nodeType": "YulFunctionCall", - "src": "10947:49:13" + "src": "10947:49:163" } ], "functionName": { "name": "allocate_memory", "nodeType": "YulIdentifier", - "src": "10931:15:13" + "src": "10931:15:163" }, "nodeType": "YulFunctionCall", - "src": "10931:66:13" + "src": "10931:66:163" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "10922:5:13" + "src": "10922:5:163" } ] }, @@ -6530,39 +6530,39 @@ { "name": "array", "nodeType": "YulIdentifier", - "src": "11013:5:13" + "src": "11013:5:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "11020:6:13" + "src": "11020:6:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "11006:6:13" + "src": "11006:6:163" }, "nodeType": "YulFunctionCall", - "src": "11006:21:13" + "src": "11006:21:163" }, "nodeType": "YulExpressionStatement", - "src": "11006:21:13" + "src": "11006:21:163" }, { "nodeType": "YulVariableDeclaration", - "src": "11036:27:13", + "src": "11036:27:163", "value": { "arguments": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "11051:5:13" + "src": "11051:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11058:4:13", + "src": "11058:4:163", "type": "", "value": "0x20" } @@ -6570,16 +6570,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11047:3:13" + "src": "11047:3:163" }, "nodeType": "YulFunctionCall", - "src": "11047:16:13" + "src": "11047:16:163" }, "variables": [ { "name": "dst", "nodeType": "YulTypedName", - "src": "11040:3:13", + "src": "11040:3:163", "type": "" } ] @@ -6587,7 +6587,7 @@ { "body": { "nodeType": "YulBlock", - "src": "11101:83:13", + "src": "11101:83:163", "statements": [ { "expression": { @@ -6595,13 +6595,13 @@ "functionName": { "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", "nodeType": "YulIdentifier", - "src": "11103:77:13" + "src": "11103:77:163" }, "nodeType": "YulFunctionCall", - "src": "11103:79:13" + "src": "11103:79:163" }, "nodeType": "YulExpressionStatement", - "src": "11103:79:13" + "src": "11103:79:163" } ] }, @@ -6612,38 +6612,38 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "11082:3:13" + "src": "11082:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "11087:6:13" + "src": "11087:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11078:3:13" + "src": "11078:3:163" }, "nodeType": "YulFunctionCall", - "src": "11078:16:13" + "src": "11078:16:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "11096:3:13" + "src": "11096:3:163" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "11075:2:13" + "src": "11075:2:163" }, "nodeType": "YulFunctionCall", - "src": "11075:25:13" + "src": "11075:25:163" }, "nodeType": "YulIf", - "src": "11072:112:13" + "src": "11072:112:163" }, { "expression": { @@ -6651,29 +6651,29 @@ { "name": "src", "nodeType": "YulIdentifier", - "src": "11217:3:13" + "src": "11217:3:163" }, { "name": "dst", "nodeType": "YulIdentifier", - "src": "11222:3:13" + "src": "11222:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "11227:6:13" + "src": "11227:6:163" } ], "functionName": { "name": "copy_calldata_to_memory", "nodeType": "YulIdentifier", - "src": "11193:23:13" + "src": "11193:23:163" }, "nodeType": "YulFunctionCall", - "src": "11193:41:13" + "src": "11193:41:163" }, "nodeType": "YulExpressionStatement", - "src": "11193:41:13" + "src": "11193:41:163" } ] }, @@ -6683,19 +6683,19 @@ { "name": "src", "nodeType": "YulTypedName", - "src": "10885:3:13", + "src": "10885:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "10890:6:13", + "src": "10890:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "10898:3:13", + "src": "10898:3:163", "type": "" } ], @@ -6703,21 +6703,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "10906:5:13", + "src": "10906:5:163", "type": "" } ], - "src": "10828:412:13" + "src": "10828:412:163" }, { "body": { "nodeType": "YulBlock", - "src": "11322:278:13", + "src": "11322:278:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "11371:83:13", + "src": "11371:83:163", "statements": [ { "expression": { @@ -6725,13 +6725,13 @@ "functionName": { "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", "nodeType": "YulIdentifier", - "src": "11373:77:13" + "src": "11373:77:163" }, "nodeType": "YulFunctionCall", - "src": "11373:79:13" + "src": "11373:79:163" }, "nodeType": "YulExpressionStatement", - "src": "11373:79:13" + "src": "11373:79:163" } ] }, @@ -6744,12 +6744,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "11350:6:13" + "src": "11350:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11358:4:13", + "src": "11358:4:163", "type": "", "value": "0x1f" } @@ -6757,68 +6757,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11346:3:13" + "src": "11346:3:163" }, "nodeType": "YulFunctionCall", - "src": "11346:17:13" + "src": "11346:17:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "11365:3:13" + "src": "11365:3:163" } ], "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "11342:3:13" + "src": "11342:3:163" }, "nodeType": "YulFunctionCall", - "src": "11342:27:13" + "src": "11342:27:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "11335:6:13" + "src": "11335:6:163" }, "nodeType": "YulFunctionCall", - "src": "11335:35:13" + "src": "11335:35:163" }, "nodeType": "YulIf", - "src": "11332:122:13" + "src": "11332:122:163" }, { "nodeType": "YulVariableDeclaration", - "src": "11463:34:13", + "src": "11463:34:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "11490:6:13" + "src": "11490:6:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "11477:12:13" + "src": "11477:12:163" }, "nodeType": "YulFunctionCall", - "src": "11477:20:13" + "src": "11477:20:163" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "11467:6:13", + "src": "11467:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11506:88:13", + "src": "11506:88:163", "value": { "arguments": [ { @@ -6826,12 +6826,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "11567:6:13" + "src": "11567:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11575:4:13", + "src": "11575:4:163", "type": "", "value": "0x20" } @@ -6839,35 +6839,35 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11563:3:13" + "src": "11563:3:163" }, "nodeType": "YulFunctionCall", - "src": "11563:17:13" + "src": "11563:17:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "11582:6:13" + "src": "11582:6:163" }, { "name": "end", "nodeType": "YulIdentifier", - "src": "11590:3:13" + "src": "11590:3:163" } ], "functionName": { "name": "abi_decode_available_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "11515:47:13" + "src": "11515:47:163" }, "nodeType": "YulFunctionCall", - "src": "11515:79:13" + "src": "11515:79:163" }, "variableNames": [ { "name": "array", "nodeType": "YulIdentifier", - "src": "11506:5:13" + "src": "11506:5:163" } ] } @@ -6879,13 +6879,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11300:6:13", + "src": "11300:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "11308:3:13", + "src": "11308:3:163", "type": "" } ], @@ -6893,21 +6893,21 @@ { "name": "array", "nodeType": "YulTypedName", - "src": "11316:5:13", + "src": "11316:5:163", "type": "" } ], - "src": "11260:340:13" + "src": "11260:340:163" }, { "body": { "nodeType": "YulBlock", - "src": "11699:561:13", + "src": "11699:561:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "11745:83:13", + "src": "11745:83:163", "statements": [ { "expression": { @@ -6915,13 +6915,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "11747:77:13" + "src": "11747:77:163" }, "nodeType": "YulFunctionCall", - "src": "11747:79:13" + "src": "11747:79:163" }, "nodeType": "YulExpressionStatement", - "src": "11747:79:13" + "src": "11747:79:163" } ] }, @@ -6932,26 +6932,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11720:7:13" + "src": "11720:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11729:9:13" + "src": "11729:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "11716:3:13" + "src": "11716:3:163" }, "nodeType": "YulFunctionCall", - "src": "11716:23:13" + "src": "11716:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "11741:2:13", + "src": "11741:2:163", "type": "", "value": "64" } @@ -6959,25 +6959,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "11712:3:13" + "src": "11712:3:163" }, "nodeType": "YulFunctionCall", - "src": "11712:32:13" + "src": "11712:32:163" }, "nodeType": "YulIf", - "src": "11709:119:13" + "src": "11709:119:163" }, { "nodeType": "YulBlock", - "src": "11838:117:13", + "src": "11838:117:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11853:15:13", + "src": "11853:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "11867:1:13", + "src": "11867:1:163", "type": "", "value": "0" }, @@ -6985,14 +6985,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "11857:6:13", + "src": "11857:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "11882:63:13", + "src": "11882:63:163", "value": { "arguments": [ { @@ -7000,41 +7000,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "11917:9:13" + "src": "11917:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "11928:6:13" + "src": "11928:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "11913:3:13" + "src": "11913:3:163" }, "nodeType": "YulFunctionCall", - "src": "11913:22:13" + "src": "11913:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "11937:7:13" + "src": "11937:7:163" } ], "functionName": { "name": "abi_decode_t_address", "nodeType": "YulIdentifier", - "src": "11892:20:13" + "src": "11892:20:163" }, "nodeType": "YulFunctionCall", - "src": "11892:53:13" + "src": "11892:53:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "11882:6:13" + "src": "11882:6:163" } ] } @@ -7042,11 +7042,11 @@ }, { "nodeType": "YulBlock", - "src": "11965:288:13", + "src": "11965:288:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "11980:46:13", + "src": "11980:46:163", "value": { "arguments": [ { @@ -7054,12 +7054,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12011:9:13" + "src": "12011:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12022:2:13", + "src": "12022:2:163", "type": "", "value": "32" } @@ -7067,25 +7067,25 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12007:3:13" + "src": "12007:3:163" }, "nodeType": "YulFunctionCall", - "src": "12007:18:13" + "src": "12007:18:163" } ], "functionName": { "name": "calldataload", "nodeType": "YulIdentifier", - "src": "11994:12:13" + "src": "11994:12:163" }, "nodeType": "YulFunctionCall", - "src": "11994:32:13" + "src": "11994:32:163" }, "variables": [ { "name": "offset", "nodeType": "YulTypedName", - "src": "11984:6:13", + "src": "11984:6:163", "type": "" } ] @@ -7093,7 +7093,7 @@ { "body": { "nodeType": "YulBlock", - "src": "12073:83:13", + "src": "12073:83:163", "statements": [ { "expression": { @@ -7101,13 +7101,13 @@ "functionName": { "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", "nodeType": "YulIdentifier", - "src": "12075:77:13" + "src": "12075:77:163" }, "nodeType": "YulFunctionCall", - "src": "12075:79:13" + "src": "12075:79:163" }, "nodeType": "YulExpressionStatement", - "src": "12075:79:13" + "src": "12075:79:163" } ] }, @@ -7116,12 +7116,12 @@ { "name": "offset", "nodeType": "YulIdentifier", - "src": "12045:6:13" + "src": "12045:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12053:18:13", + "src": "12053:18:163", "type": "", "value": "0xffffffffffffffff" } @@ -7129,17 +7129,17 @@ "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "12042:2:13" + "src": "12042:2:163" }, "nodeType": "YulFunctionCall", - "src": "12042:30:13" + "src": "12042:30:163" }, "nodeType": "YulIf", - "src": "12039:117:13" + "src": "12039:117:163" }, { "nodeType": "YulAssignment", - "src": "12170:73:13", + "src": "12170:73:163", "value": { "arguments": [ { @@ -7147,41 +7147,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "12215:9:13" + "src": "12215:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "12226:6:13" + "src": "12226:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12211:3:13" + "src": "12211:3:163" }, "nodeType": "YulFunctionCall", - "src": "12211:22:13" + "src": "12211:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "12235:7:13" + "src": "12235:7:163" } ], "functionName": { "name": "abi_decode_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "12180:30:13" + "src": "12180:30:163" }, "nodeType": "YulFunctionCall", - "src": "12180:63:13" + "src": "12180:63:163" }, "variableNames": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "12170:6:13" + "src": "12170:6:163" } ] } @@ -7195,13 +7195,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "11661:9:13", + "src": "11661:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "11672:7:13", + "src": "11672:7:163", "type": "" } ], @@ -7209,22 +7209,22 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "11684:6:13", + "src": "11684:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "11692:6:13", + "src": "11692:6:163", "type": "" } ], - "src": "11606:654:13" + "src": "11606:654:163" }, { "body": { "nodeType": "YulBlock", - "src": "12294:152:13", + "src": "12294:152:163", "statements": [ { "expression": { @@ -7232,14 +7232,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12311:1:13", + "src": "12311:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12314:77:13", + "src": "12314:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -7247,13 +7247,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12304:6:13" + "src": "12304:6:163" }, "nodeType": "YulFunctionCall", - "src": "12304:88:13" + "src": "12304:88:163" }, "nodeType": "YulExpressionStatement", - "src": "12304:88:13" + "src": "12304:88:163" }, { "expression": { @@ -7261,14 +7261,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12408:1:13", + "src": "12408:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12411:4:13", + "src": "12411:4:163", "type": "", "value": "0x22" } @@ -7276,13 +7276,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12401:6:13" + "src": "12401:6:163" }, "nodeType": "YulFunctionCall", - "src": "12401:15:13" + "src": "12401:15:163" }, "nodeType": "YulExpressionStatement", - "src": "12401:15:13" + "src": "12401:15:163" }, { "expression": { @@ -7290,14 +7290,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "12432:1:13", + "src": "12432:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12435:4:13", + "src": "12435:4:163", "type": "", "value": "0x24" } @@ -7305,39 +7305,39 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "12425:6:13" + "src": "12425:6:163" }, "nodeType": "YulFunctionCall", - "src": "12425:15:13" + "src": "12425:15:163" }, "nodeType": "YulExpressionStatement", - "src": "12425:15:13" + "src": "12425:15:163" } ] }, "name": "panic_error_0x22", "nodeType": "YulFunctionDefinition", - "src": "12266:180:13" + "src": "12266:180:163" }, { "body": { "nodeType": "YulBlock", - "src": "12503:269:13", + "src": "12503:269:163", "statements": [ { "nodeType": "YulAssignment", - "src": "12513:22:13", + "src": "12513:22:163", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "12527:4:13" + "src": "12527:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12533:1:13", + "src": "12533:1:163", "type": "", "value": "2" } @@ -7345,33 +7345,33 @@ "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "12523:3:13" + "src": "12523:3:163" }, "nodeType": "YulFunctionCall", - "src": "12523:12:13" + "src": "12523:12:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12513:6:13" + "src": "12513:6:163" } ] }, { "nodeType": "YulVariableDeclaration", - "src": "12544:38:13", + "src": "12544:38:163", "value": { "arguments": [ { "name": "data", "nodeType": "YulIdentifier", - "src": "12574:4:13" + "src": "12574:4:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12580:1:13", + "src": "12580:1:163", "type": "", "value": "1" } @@ -7379,16 +7379,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12570:3:13" + "src": "12570:3:163" }, "nodeType": "YulFunctionCall", - "src": "12570:12:13" + "src": "12570:12:163" }, "variables": [ { "name": "outOfPlaceEncoding", "nodeType": "YulTypedName", - "src": "12548:18:13", + "src": "12548:18:163", "type": "" } ] @@ -7396,22 +7396,22 @@ { "body": { "nodeType": "YulBlock", - "src": "12621:51:13", + "src": "12621:51:163", "statements": [ { "nodeType": "YulAssignment", - "src": "12635:27:13", + "src": "12635:27:163", "value": { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12649:6:13" + "src": "12649:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12657:4:13", + "src": "12657:4:163", "type": "", "value": "0x7f" } @@ -7419,16 +7419,16 @@ "functionName": { "name": "and", "nodeType": "YulIdentifier", - "src": "12645:3:13" + "src": "12645:3:163" }, "nodeType": "YulFunctionCall", - "src": "12645:17:13" + "src": "12645:17:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12635:6:13" + "src": "12635:6:163" } ] } @@ -7439,24 +7439,24 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "12601:18:13" + "src": "12601:18:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "12594:6:13" + "src": "12594:6:163" }, "nodeType": "YulFunctionCall", - "src": "12594:26:13" + "src": "12594:26:163" }, "nodeType": "YulIf", - "src": "12591:81:13" + "src": "12591:81:163" }, { "body": { "nodeType": "YulBlock", - "src": "12724:42:13", + "src": "12724:42:163", "statements": [ { "expression": { @@ -7464,13 +7464,13 @@ "functionName": { "name": "panic_error_0x22", "nodeType": "YulIdentifier", - "src": "12738:16:13" + "src": "12738:16:163" }, "nodeType": "YulFunctionCall", - "src": "12738:18:13" + "src": "12738:18:163" }, "nodeType": "YulExpressionStatement", - "src": "12738:18:13" + "src": "12738:18:163" } ] }, @@ -7479,19 +7479,19 @@ { "name": "outOfPlaceEncoding", "nodeType": "YulIdentifier", - "src": "12688:18:13" + "src": "12688:18:163" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "12711:6:13" + "src": "12711:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12719:2:13", + "src": "12719:2:163", "type": "", "value": "32" } @@ -7499,22 +7499,22 @@ "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "12708:2:13" + "src": "12708:2:163" }, "nodeType": "YulFunctionCall", - "src": "12708:14:13" + "src": "12708:14:163" } ], "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "12685:2:13" + "src": "12685:2:163" }, "nodeType": "YulFunctionCall", - "src": "12685:38:13" + "src": "12685:38:163" }, "nodeType": "YulIf", - "src": "12682:84:13" + "src": "12682:84:163" } ] }, @@ -7524,7 +7524,7 @@ { "name": "data", "nodeType": "YulTypedName", - "src": "12487:4:13", + "src": "12487:4:163", "type": "" } ], @@ -7532,16 +7532,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "12496:6:13", + "src": "12496:6:163", "type": "" } ], - "src": "12452:320:13" + "src": "12452:320:163" }, { "body": { "nodeType": "YulBlock", - "src": "12884:125:13", + "src": "12884:125:163", "statements": [ { "expression": { @@ -7551,12 +7551,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "12906:6:13" + "src": "12906:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12914:1:13", + "src": "12914:1:163", "type": "", "value": "0" } @@ -7564,16 +7564,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12902:3:13" + "src": "12902:3:163" }, "nodeType": "YulFunctionCall", - "src": "12902:14:13" + "src": "12902:14:163" }, { "hexValue": "4552433732313a20617070726f76656420717565727920666f72206e6f6e6578", "kind": "string", "nodeType": "YulLiteral", - "src": "12918:34:13", + "src": "12918:34:163", "type": "", "value": "ERC721: approved query for nonex" } @@ -7581,13 +7581,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12895:6:13" + "src": "12895:6:163" }, "nodeType": "YulFunctionCall", - "src": "12895:58:13" + "src": "12895:58:163" }, "nodeType": "YulExpressionStatement", - "src": "12895:58:13" + "src": "12895:58:163" }, { "expression": { @@ -7597,12 +7597,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "12974:6:13" + "src": "12974:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "12982:2:13", + "src": "12982:2:163", "type": "", "value": "32" } @@ -7610,16 +7610,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "12970:3:13" + "src": "12970:3:163" }, "nodeType": "YulFunctionCall", - "src": "12970:15:13" + "src": "12970:15:163" }, { "hexValue": "697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "12987:14:13", + "src": "12987:14:163", "type": "", "value": "istent token" } @@ -7627,13 +7627,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "12963:6:13" + "src": "12963:6:163" }, "nodeType": "YulFunctionCall", - "src": "12963:39:13" + "src": "12963:39:163" }, "nodeType": "YulExpressionStatement", - "src": "12963:39:13" + "src": "12963:39:163" } ] }, @@ -7643,31 +7643,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "12876:6:13", + "src": "12876:6:163", "type": "" } ], - "src": "12778:231:13" + "src": "12778:231:163" }, { "body": { "nodeType": "YulBlock", - "src": "13161:220:13", + "src": "13161:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "13171:74:13", + "src": "13171:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13237:3:13" + "src": "13237:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13242:2:13", + "src": "13242:2:163", "type": "", "value": "44" } @@ -7675,16 +7675,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "13178:58:13" + "src": "13178:58:163" }, "nodeType": "YulFunctionCall", - "src": "13178:67:13" + "src": "13178:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13171:3:13" + "src": "13171:3:163" } ] }, @@ -7694,34 +7694,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13343:3:13" + "src": "13343:3:163" } ], "functionName": { "name": "store_literal_in_memory_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d", "nodeType": "YulIdentifier", - "src": "13254:88:13" + "src": "13254:88:163" }, "nodeType": "YulFunctionCall", - "src": "13254:93:13" + "src": "13254:93:163" }, "nodeType": "YulExpressionStatement", - "src": "13254:93:13" + "src": "13254:93:163" }, { "nodeType": "YulAssignment", - "src": "13356:19:13", + "src": "13356:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "13367:3:13" + "src": "13367:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13372:2:13", + "src": "13372:2:163", "type": "", "value": "64" } @@ -7729,16 +7729,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13363:3:13" + "src": "13363:3:163" }, "nodeType": "YulFunctionCall", - "src": "13363:12:13" + "src": "13363:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "13356:3:13" + "src": "13356:3:163" } ] } @@ -7750,7 +7750,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "13149:3:13", + "src": "13149:3:163", "type": "" } ], @@ -7758,31 +7758,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "13157:3:13", + "src": "13157:3:163", "type": "" } ], - "src": "13015:366:13" + "src": "13015:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "13558:248:13", + "src": "13558:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "13568:26:13", + "src": "13568:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13580:9:13" + "src": "13580:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13591:2:13", + "src": "13591:2:163", "type": "", "value": "32" } @@ -7790,16 +7790,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13576:3:13" + "src": "13576:3:163" }, "nodeType": "YulFunctionCall", - "src": "13576:18:13" + "src": "13576:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13568:4:13" + "src": "13568:4:163" } ] }, @@ -7811,12 +7811,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13615:9:13" + "src": "13615:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13626:1:13", + "src": "13626:1:163", "type": "", "value": "0" } @@ -7824,68 +7824,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13611:3:13" + "src": "13611:3:163" }, "nodeType": "YulFunctionCall", - "src": "13611:17:13" + "src": "13611:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13634:4:13" + "src": "13634:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "13640:9:13" + "src": "13640:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "13630:3:13" + "src": "13630:3:163" }, "nodeType": "YulFunctionCall", - "src": "13630:20:13" + "src": "13630:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13604:6:13" + "src": "13604:6:163" }, "nodeType": "YulFunctionCall", - "src": "13604:47:13" + "src": "13604:47:163" }, "nodeType": "YulExpressionStatement", - "src": "13604:47:13" + "src": "13604:47:163" }, { "nodeType": "YulAssignment", - "src": "13660:139:13", + "src": "13660:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13794:4:13" + "src": "13794:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "13668:124:13" + "src": "13668:124:163" }, "nodeType": "YulFunctionCall", - "src": "13668:131:13" + "src": "13668:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "13660:4:13" + "src": "13660:4:163" } ] } @@ -7897,7 +7897,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "13538:9:13", + "src": "13538:9:163", "type": "" } ], @@ -7905,16 +7905,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "13553:4:13", + "src": "13553:4:163", "type": "" } ], - "src": "13387:419:13" + "src": "13387:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "13918:114:13", + "src": "13918:114:163", "statements": [ { "expression": { @@ -7924,12 +7924,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "13940:6:13" + "src": "13940:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "13948:1:13", + "src": "13948:1:163", "type": "", "value": "0" } @@ -7937,16 +7937,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "13936:3:13" + "src": "13936:3:163" }, "nodeType": "YulFunctionCall", - "src": "13936:14:13" + "src": "13936:14:163" }, { "hexValue": "4552433732313a20617070726f76616c20746f2063757272656e74206f776e65", "kind": "string", "nodeType": "YulLiteral", - "src": "13952:34:13", + "src": "13952:34:163", "type": "", "value": "ERC721: approval to current owne" } @@ -7954,13 +7954,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13929:6:13" + "src": "13929:6:163" }, "nodeType": "YulFunctionCall", - "src": "13929:58:13" + "src": "13929:58:163" }, "nodeType": "YulExpressionStatement", - "src": "13929:58:13" + "src": "13929:58:163" }, { "expression": { @@ -7970,12 +7970,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "14008:6:13" + "src": "14008:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14016:2:13", + "src": "14016:2:163", "type": "", "value": "32" } @@ -7983,16 +7983,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14004:3:13" + "src": "14004:3:163" }, "nodeType": "YulFunctionCall", - "src": "14004:15:13" + "src": "14004:15:163" }, { "hexValue": "72", "kind": "string", "nodeType": "YulLiteral", - "src": "14021:3:13", + "src": "14021:3:163", "type": "", "value": "r" } @@ -8000,13 +8000,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "13997:6:13" + "src": "13997:6:163" }, "nodeType": "YulFunctionCall", - "src": "13997:28:13" + "src": "13997:28:163" }, "nodeType": "YulExpressionStatement", - "src": "13997:28:13" + "src": "13997:28:163" } ] }, @@ -8016,31 +8016,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "13910:6:13", + "src": "13910:6:163", "type": "" } ], - "src": "13812:220:13" + "src": "13812:220:163" }, { "body": { "nodeType": "YulBlock", - "src": "14184:220:13", + "src": "14184:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "14194:74:13", + "src": "14194:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14260:3:13" + "src": "14260:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14265:2:13", + "src": "14265:2:163", "type": "", "value": "33" } @@ -8048,16 +8048,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "14201:58:13" + "src": "14201:58:163" }, "nodeType": "YulFunctionCall", - "src": "14201:67:13" + "src": "14201:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14194:3:13" + "src": "14194:3:163" } ] }, @@ -8067,34 +8067,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14366:3:13" + "src": "14366:3:163" } ], "functionName": { "name": "store_literal_in_memory_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942", "nodeType": "YulIdentifier", - "src": "14277:88:13" + "src": "14277:88:163" }, "nodeType": "YulFunctionCall", - "src": "14277:93:13" + "src": "14277:93:163" }, "nodeType": "YulExpressionStatement", - "src": "14277:93:13" + "src": "14277:93:163" }, { "nodeType": "YulAssignment", - "src": "14379:19:13", + "src": "14379:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "14390:3:13" + "src": "14390:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14395:2:13", + "src": "14395:2:163", "type": "", "value": "64" } @@ -8102,16 +8102,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14386:3:13" + "src": "14386:3:163" }, "nodeType": "YulFunctionCall", - "src": "14386:12:13" + "src": "14386:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "14379:3:13" + "src": "14379:3:163" } ] } @@ -8123,7 +8123,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "14172:3:13", + "src": "14172:3:163", "type": "" } ], @@ -8131,31 +8131,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "14180:3:13", + "src": "14180:3:163", "type": "" } ], - "src": "14038:366:13" + "src": "14038:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "14581:248:13", + "src": "14581:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "14591:26:13", + "src": "14591:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14603:9:13" + "src": "14603:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14614:2:13", + "src": "14614:2:163", "type": "", "value": "32" } @@ -8163,16 +8163,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14599:3:13" + "src": "14599:3:163" }, "nodeType": "YulFunctionCall", - "src": "14599:18:13" + "src": "14599:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14591:4:13" + "src": "14591:4:163" } ] }, @@ -8184,12 +8184,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14638:9:13" + "src": "14638:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14649:1:13", + "src": "14649:1:163", "type": "", "value": "0" } @@ -8197,68 +8197,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14634:3:13" + "src": "14634:3:163" }, "nodeType": "YulFunctionCall", - "src": "14634:17:13" + "src": "14634:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14657:4:13" + "src": "14657:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "14663:9:13" + "src": "14663:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "14653:3:13" + "src": "14653:3:163" }, "nodeType": "YulFunctionCall", - "src": "14653:20:13" + "src": "14653:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14627:6:13" + "src": "14627:6:163" }, "nodeType": "YulFunctionCall", - "src": "14627:47:13" + "src": "14627:47:163" }, "nodeType": "YulExpressionStatement", - "src": "14627:47:13" + "src": "14627:47:163" }, { "nodeType": "YulAssignment", - "src": "14683:139:13", + "src": "14683:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14817:4:13" + "src": "14817:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_b51b4875eede07862961e8f9365c6749f5fe55c6ee5d7a9e42b6912ad0b15942_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "14691:124:13" + "src": "14691:124:163" }, "nodeType": "YulFunctionCall", - "src": "14691:131:13" + "src": "14691:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "14683:4:13" + "src": "14683:4:163" } ] } @@ -8270,7 +8270,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "14561:9:13", + "src": "14561:9:163", "type": "" } ], @@ -8278,16 +8278,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "14576:4:13", + "src": "14576:4:163", "type": "" } ], - "src": "14410:419:13" + "src": "14410:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "14941:137:13", + "src": "14941:137:163", "statements": [ { "expression": { @@ -8297,12 +8297,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "14963:6:13" + "src": "14963:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "14971:1:13", + "src": "14971:1:163", "type": "", "value": "0" } @@ -8310,16 +8310,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "14959:3:13" + "src": "14959:3:163" }, "nodeType": "YulFunctionCall", - "src": "14959:14:13" + "src": "14959:14:163" }, { "hexValue": "4552433732313a20617070726f76652063616c6c6572206973206e6f74206f77", "kind": "string", "nodeType": "YulLiteral", - "src": "14975:34:13", + "src": "14975:34:163", "type": "", "value": "ERC721: approve caller is not ow" } @@ -8327,13 +8327,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "14952:6:13" + "src": "14952:6:163" }, "nodeType": "YulFunctionCall", - "src": "14952:58:13" + "src": "14952:58:163" }, "nodeType": "YulExpressionStatement", - "src": "14952:58:13" + "src": "14952:58:163" }, { "expression": { @@ -8343,12 +8343,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "15031:6:13" + "src": "15031:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15039:2:13", + "src": "15039:2:163", "type": "", "value": "32" } @@ -8356,16 +8356,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15027:3:13" + "src": "15027:3:163" }, "nodeType": "YulFunctionCall", - "src": "15027:15:13" + "src": "15027:15:163" }, { "hexValue": "6e6572206e6f7220617070726f76656420666f7220616c6c", "kind": "string", "nodeType": "YulLiteral", - "src": "15044:26:13", + "src": "15044:26:163", "type": "", "value": "ner nor approved for all" } @@ -8373,13 +8373,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15020:6:13" + "src": "15020:6:163" }, "nodeType": "YulFunctionCall", - "src": "15020:51:13" + "src": "15020:51:163" }, "nodeType": "YulExpressionStatement", - "src": "15020:51:13" + "src": "15020:51:163" } ] }, @@ -8389,31 +8389,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "14933:6:13", + "src": "14933:6:163", "type": "" } ], - "src": "14835:243:13" + "src": "14835:243:163" }, { "body": { "nodeType": "YulBlock", - "src": "15230:220:13", + "src": "15230:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "15240:74:13", + "src": "15240:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15306:3:13" + "src": "15306:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15311:2:13", + "src": "15311:2:163", "type": "", "value": "56" } @@ -8421,16 +8421,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15247:58:13" + "src": "15247:58:163" }, "nodeType": "YulFunctionCall", - "src": "15247:67:13" + "src": "15247:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15240:3:13" + "src": "15240:3:163" } ] }, @@ -8440,34 +8440,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15412:3:13" + "src": "15412:3:163" } ], "functionName": { "name": "store_literal_in_memory_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d", "nodeType": "YulIdentifier", - "src": "15323:88:13" + "src": "15323:88:163" }, "nodeType": "YulFunctionCall", - "src": "15323:93:13" + "src": "15323:93:163" }, "nodeType": "YulExpressionStatement", - "src": "15323:93:13" + "src": "15323:93:163" }, { "nodeType": "YulAssignment", - "src": "15425:19:13", + "src": "15425:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "15436:3:13" + "src": "15436:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15441:2:13", + "src": "15441:2:163", "type": "", "value": "64" } @@ -8475,16 +8475,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15432:3:13" + "src": "15432:3:163" }, "nodeType": "YulFunctionCall", - "src": "15432:12:13" + "src": "15432:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "15425:3:13" + "src": "15425:3:163" } ] } @@ -8496,7 +8496,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "15218:3:13", + "src": "15218:3:163", "type": "" } ], @@ -8504,31 +8504,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "15226:3:13", + "src": "15226:3:163", "type": "" } ], - "src": "15084:366:13" + "src": "15084:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "15627:248:13", + "src": "15627:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "15637:26:13", + "src": "15637:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15649:9:13" + "src": "15649:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15660:2:13", + "src": "15660:2:163", "type": "", "value": "32" } @@ -8536,16 +8536,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15645:3:13" + "src": "15645:3:163" }, "nodeType": "YulFunctionCall", - "src": "15645:18:13" + "src": "15645:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15637:4:13" + "src": "15637:4:163" } ] }, @@ -8557,12 +8557,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15684:9:13" + "src": "15684:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "15695:1:13", + "src": "15695:1:163", "type": "", "value": "0" } @@ -8570,68 +8570,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "15680:3:13" + "src": "15680:3:163" }, "nodeType": "YulFunctionCall", - "src": "15680:17:13" + "src": "15680:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15703:4:13" + "src": "15703:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "15709:9:13" + "src": "15709:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "15699:3:13" + "src": "15699:3:163" }, "nodeType": "YulFunctionCall", - "src": "15699:20:13" + "src": "15699:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15673:6:13" + "src": "15673:6:163" }, "nodeType": "YulFunctionCall", - "src": "15673:47:13" + "src": "15673:47:163" }, "nodeType": "YulExpressionStatement", - "src": "15673:47:13" + "src": "15673:47:163" }, { "nodeType": "YulAssignment", - "src": "15729:139:13", + "src": "15729:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15863:4:13" + "src": "15863:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "15737:124:13" + "src": "15737:124:163" }, "nodeType": "YulFunctionCall", - "src": "15737:131:13" + "src": "15737:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "15729:4:13" + "src": "15729:4:163" } ] } @@ -8643,7 +8643,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "15607:9:13", + "src": "15607:9:163", "type": "" } ], @@ -8651,16 +8651,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "15622:4:13", + "src": "15622:4:163", "type": "" } ], - "src": "15456:419:13" + "src": "15456:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "15987:130:13", + "src": "15987:130:163", "statements": [ { "expression": { @@ -8670,12 +8670,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "16009:6:13" + "src": "16009:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16017:1:13", + "src": "16017:1:163", "type": "", "value": "0" } @@ -8683,16 +8683,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16005:3:13" + "src": "16005:3:163" }, "nodeType": "YulFunctionCall", - "src": "16005:14:13" + "src": "16005:14:163" }, { "hexValue": "4552433732313a207472616e736665722063616c6c6572206973206e6f74206f", "kind": "string", "nodeType": "YulLiteral", - "src": "16021:34:13", + "src": "16021:34:163", "type": "", "value": "ERC721: transfer caller is not o" } @@ -8700,13 +8700,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "15998:6:13" + "src": "15998:6:163" }, "nodeType": "YulFunctionCall", - "src": "15998:58:13" + "src": "15998:58:163" }, "nodeType": "YulExpressionStatement", - "src": "15998:58:13" + "src": "15998:58:163" }, { "expression": { @@ -8716,12 +8716,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "16077:6:13" + "src": "16077:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16085:2:13", + "src": "16085:2:163", "type": "", "value": "32" } @@ -8729,16 +8729,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16073:3:13" + "src": "16073:3:163" }, "nodeType": "YulFunctionCall", - "src": "16073:15:13" + "src": "16073:15:163" }, { "hexValue": "776e6572206e6f7220617070726f766564", "kind": "string", "nodeType": "YulLiteral", - "src": "16090:19:13", + "src": "16090:19:163", "type": "", "value": "wner nor approved" } @@ -8746,13 +8746,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16066:6:13" + "src": "16066:6:163" }, "nodeType": "YulFunctionCall", - "src": "16066:44:13" + "src": "16066:44:163" }, "nodeType": "YulExpressionStatement", - "src": "16066:44:13" + "src": "16066:44:163" } ] }, @@ -8762,31 +8762,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "15979:6:13", + "src": "15979:6:163", "type": "" } ], - "src": "15881:236:13" + "src": "15881:236:163" }, { "body": { "nodeType": "YulBlock", - "src": "16269:220:13", + "src": "16269:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "16279:74:13", + "src": "16279:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16345:3:13" + "src": "16345:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16350:2:13", + "src": "16350:2:163", "type": "", "value": "49" } @@ -8794,16 +8794,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16286:58:13" + "src": "16286:58:163" }, "nodeType": "YulFunctionCall", - "src": "16286:67:13" + "src": "16286:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16279:3:13" + "src": "16279:3:163" } ] }, @@ -8813,34 +8813,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16451:3:13" + "src": "16451:3:163" } ], "functionName": { "name": "store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2", "nodeType": "YulIdentifier", - "src": "16362:88:13" + "src": "16362:88:163" }, "nodeType": "YulFunctionCall", - "src": "16362:93:13" + "src": "16362:93:163" }, "nodeType": "YulExpressionStatement", - "src": "16362:93:13" + "src": "16362:93:163" }, { "nodeType": "YulAssignment", - "src": "16464:19:13", + "src": "16464:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "16475:3:13" + "src": "16475:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16480:2:13", + "src": "16480:2:163", "type": "", "value": "64" } @@ -8848,16 +8848,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16471:3:13" + "src": "16471:3:163" }, "nodeType": "YulFunctionCall", - "src": "16471:12:13" + "src": "16471:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "16464:3:13" + "src": "16464:3:163" } ] } @@ -8869,7 +8869,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "16257:3:13", + "src": "16257:3:163", "type": "" } ], @@ -8877,31 +8877,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "16265:3:13", + "src": "16265:3:163", "type": "" } ], - "src": "16123:366:13" + "src": "16123:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "16666:248:13", + "src": "16666:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "16676:26:13", + "src": "16676:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16688:9:13" + "src": "16688:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16699:2:13", + "src": "16699:2:163", "type": "", "value": "32" } @@ -8909,16 +8909,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16684:3:13" + "src": "16684:3:163" }, "nodeType": "YulFunctionCall", - "src": "16684:18:13" + "src": "16684:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16676:4:13" + "src": "16676:4:163" } ] }, @@ -8930,12 +8930,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16723:9:13" + "src": "16723:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "16734:1:13", + "src": "16734:1:163", "type": "", "value": "0" } @@ -8943,68 +8943,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "16719:3:13" + "src": "16719:3:163" }, "nodeType": "YulFunctionCall", - "src": "16719:17:13" + "src": "16719:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16742:4:13" + "src": "16742:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "16748:9:13" + "src": "16748:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "16738:3:13" + "src": "16738:3:163" }, "nodeType": "YulFunctionCall", - "src": "16738:20:13" + "src": "16738:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "16712:6:13" + "src": "16712:6:163" }, "nodeType": "YulFunctionCall", - "src": "16712:47:13" + "src": "16712:47:163" }, "nodeType": "YulExpressionStatement", - "src": "16712:47:13" + "src": "16712:47:163" }, { "nodeType": "YulAssignment", - "src": "16768:139:13", + "src": "16768:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16902:4:13" + "src": "16902:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "16776:124:13" + "src": "16776:124:163" }, "nodeType": "YulFunctionCall", - "src": "16776:131:13" + "src": "16776:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "16768:4:13" + "src": "16768:4:163" } ] } @@ -9016,7 +9016,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "16646:9:13", + "src": "16646:9:163", "type": "" } ], @@ -9024,16 +9024,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "16661:4:13", + "src": "16661:4:163", "type": "" } ], - "src": "16495:419:13" + "src": "16495:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "17026:122:13", + "src": "17026:122:163", "statements": [ { "expression": { @@ -9043,12 +9043,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17048:6:13" + "src": "17048:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17056:1:13", + "src": "17056:1:163", "type": "", "value": "0" } @@ -9056,16 +9056,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17044:3:13" + "src": "17044:3:163" }, "nodeType": "YulFunctionCall", - "src": "17044:14:13" + "src": "17044:14:163" }, { "hexValue": "4552433732313a206f776e657220717565727920666f72206e6f6e6578697374", "kind": "string", "nodeType": "YulLiteral", - "src": "17060:34:13", + "src": "17060:34:163", "type": "", "value": "ERC721: owner query for nonexist" } @@ -9073,13 +9073,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17037:6:13" + "src": "17037:6:163" }, "nodeType": "YulFunctionCall", - "src": "17037:58:13" + "src": "17037:58:163" }, "nodeType": "YulExpressionStatement", - "src": "17037:58:13" + "src": "17037:58:163" }, { "expression": { @@ -9089,12 +9089,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "17116:6:13" + "src": "17116:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17124:2:13", + "src": "17124:2:163", "type": "", "value": "32" } @@ -9102,16 +9102,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17112:3:13" + "src": "17112:3:163" }, "nodeType": "YulFunctionCall", - "src": "17112:15:13" + "src": "17112:15:163" }, { "hexValue": "656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "17129:11:13", + "src": "17129:11:163", "type": "", "value": "ent token" } @@ -9119,13 +9119,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17105:6:13" + "src": "17105:6:163" }, "nodeType": "YulFunctionCall", - "src": "17105:36:13" + "src": "17105:36:163" }, "nodeType": "YulExpressionStatement", - "src": "17105:36:13" + "src": "17105:36:163" } ] }, @@ -9135,31 +9135,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "17018:6:13", + "src": "17018:6:163", "type": "" } ], - "src": "16920:228:13" + "src": "16920:228:163" }, { "body": { "nodeType": "YulBlock", - "src": "17300:220:13", + "src": "17300:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "17310:74:13", + "src": "17310:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17376:3:13" + "src": "17376:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17381:2:13", + "src": "17381:2:163", "type": "", "value": "41" } @@ -9167,16 +9167,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17317:58:13" + "src": "17317:58:163" }, "nodeType": "YulFunctionCall", - "src": "17317:67:13" + "src": "17317:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17310:3:13" + "src": "17310:3:163" } ] }, @@ -9186,34 +9186,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17482:3:13" + "src": "17482:3:163" } ], "functionName": { "name": "store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397", "nodeType": "YulIdentifier", - "src": "17393:88:13" + "src": "17393:88:163" }, "nodeType": "YulFunctionCall", - "src": "17393:93:13" + "src": "17393:93:163" }, "nodeType": "YulExpressionStatement", - "src": "17393:93:13" + "src": "17393:93:163" }, { "nodeType": "YulAssignment", - "src": "17495:19:13", + "src": "17495:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "17506:3:13" + "src": "17506:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17511:2:13", + "src": "17511:2:163", "type": "", "value": "64" } @@ -9221,16 +9221,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17502:3:13" + "src": "17502:3:163" }, "nodeType": "YulFunctionCall", - "src": "17502:12:13" + "src": "17502:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "17495:3:13" + "src": "17495:3:163" } ] } @@ -9242,7 +9242,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "17288:3:13", + "src": "17288:3:163", "type": "" } ], @@ -9250,31 +9250,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "17296:3:13", + "src": "17296:3:163", "type": "" } ], - "src": "17154:366:13" + "src": "17154:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "17697:248:13", + "src": "17697:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "17707:26:13", + "src": "17707:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17719:9:13" + "src": "17719:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17730:2:13", + "src": "17730:2:163", "type": "", "value": "32" } @@ -9282,16 +9282,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17715:3:13" + "src": "17715:3:163" }, "nodeType": "YulFunctionCall", - "src": "17715:18:13" + "src": "17715:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17707:4:13" + "src": "17707:4:163" } ] }, @@ -9303,12 +9303,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17754:9:13" + "src": "17754:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "17765:1:13", + "src": "17765:1:163", "type": "", "value": "0" } @@ -9316,68 +9316,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "17750:3:13" + "src": "17750:3:163" }, "nodeType": "YulFunctionCall", - "src": "17750:17:13" + "src": "17750:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17773:4:13" + "src": "17773:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "17779:9:13" + "src": "17779:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "17769:3:13" + "src": "17769:3:163" }, "nodeType": "YulFunctionCall", - "src": "17769:20:13" + "src": "17769:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "17743:6:13" + "src": "17743:6:163" }, "nodeType": "YulFunctionCall", - "src": "17743:47:13" + "src": "17743:47:163" }, "nodeType": "YulExpressionStatement", - "src": "17743:47:13" + "src": "17743:47:163" }, { "nodeType": "YulAssignment", - "src": "17799:139:13", + "src": "17799:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17933:4:13" + "src": "17933:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "17807:124:13" + "src": "17807:124:163" }, "nodeType": "YulFunctionCall", - "src": "17807:131:13" + "src": "17807:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "17799:4:13" + "src": "17799:4:163" } ] } @@ -9389,7 +9389,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "17677:9:13", + "src": "17677:9:163", "type": "" } ], @@ -9397,16 +9397,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "17692:4:13", + "src": "17692:4:163", "type": "" } ], - "src": "17526:419:13" + "src": "17526:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "18057:123:13", + "src": "18057:123:163", "statements": [ { "expression": { @@ -9416,12 +9416,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "18079:6:13" + "src": "18079:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18087:1:13", + "src": "18087:1:163", "type": "", "value": "0" } @@ -9429,16 +9429,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18075:3:13" + "src": "18075:3:163" }, "nodeType": "YulFunctionCall", - "src": "18075:14:13" + "src": "18075:14:163" }, { "hexValue": "4552433732313a2062616c616e636520717565727920666f7220746865207a65", "kind": "string", "nodeType": "YulLiteral", - "src": "18091:34:13", + "src": "18091:34:163", "type": "", "value": "ERC721: balance query for the ze" } @@ -9446,13 +9446,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18068:6:13" + "src": "18068:6:163" }, "nodeType": "YulFunctionCall", - "src": "18068:58:13" + "src": "18068:58:163" }, "nodeType": "YulExpressionStatement", - "src": "18068:58:13" + "src": "18068:58:163" }, { "expression": { @@ -9462,12 +9462,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "18147:6:13" + "src": "18147:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18155:2:13", + "src": "18155:2:163", "type": "", "value": "32" } @@ -9475,16 +9475,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18143:3:13" + "src": "18143:3:163" }, "nodeType": "YulFunctionCall", - "src": "18143:15:13" + "src": "18143:15:163" }, { "hexValue": "726f2061646472657373", "kind": "string", "nodeType": "YulLiteral", - "src": "18160:12:13", + "src": "18160:12:163", "type": "", "value": "ro address" } @@ -9492,13 +9492,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18136:6:13" + "src": "18136:6:163" }, "nodeType": "YulFunctionCall", - "src": "18136:37:13" + "src": "18136:37:163" }, "nodeType": "YulExpressionStatement", - "src": "18136:37:13" + "src": "18136:37:163" } ] }, @@ -9508,31 +9508,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "18049:6:13", + "src": "18049:6:163", "type": "" } ], - "src": "17951:229:13" + "src": "17951:229:163" }, { "body": { "nodeType": "YulBlock", - "src": "18332:220:13", + "src": "18332:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "18342:74:13", + "src": "18342:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18408:3:13" + "src": "18408:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18413:2:13", + "src": "18413:2:163", "type": "", "value": "42" } @@ -9540,16 +9540,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18349:58:13" + "src": "18349:58:163" }, "nodeType": "YulFunctionCall", - "src": "18349:67:13" + "src": "18349:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18342:3:13" + "src": "18342:3:163" } ] }, @@ -9559,34 +9559,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18514:3:13" + "src": "18514:3:163" } ], "functionName": { "name": "store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba", "nodeType": "YulIdentifier", - "src": "18425:88:13" + "src": "18425:88:163" }, "nodeType": "YulFunctionCall", - "src": "18425:93:13" + "src": "18425:93:163" }, "nodeType": "YulExpressionStatement", - "src": "18425:93:13" + "src": "18425:93:163" }, { "nodeType": "YulAssignment", - "src": "18527:19:13", + "src": "18527:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "18538:3:13" + "src": "18538:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18543:2:13", + "src": "18543:2:163", "type": "", "value": "64" } @@ -9594,16 +9594,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18534:3:13" + "src": "18534:3:163" }, "nodeType": "YulFunctionCall", - "src": "18534:12:13" + "src": "18534:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "18527:3:13" + "src": "18527:3:163" } ] } @@ -9615,7 +9615,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "18320:3:13", + "src": "18320:3:163", "type": "" } ], @@ -9623,31 +9623,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "18328:3:13", + "src": "18328:3:163", "type": "" } ], - "src": "18186:366:13" + "src": "18186:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "18729:248:13", + "src": "18729:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "18739:26:13", + "src": "18739:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18751:9:13" + "src": "18751:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18762:2:13", + "src": "18762:2:163", "type": "", "value": "32" } @@ -9655,16 +9655,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18747:3:13" + "src": "18747:3:163" }, "nodeType": "YulFunctionCall", - "src": "18747:18:13" + "src": "18747:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18739:4:13" + "src": "18739:4:163" } ] }, @@ -9676,12 +9676,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18786:9:13" + "src": "18786:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "18797:1:13", + "src": "18797:1:163", "type": "", "value": "0" } @@ -9689,68 +9689,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "18782:3:13" + "src": "18782:3:163" }, "nodeType": "YulFunctionCall", - "src": "18782:17:13" + "src": "18782:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18805:4:13" + "src": "18805:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "18811:9:13" + "src": "18811:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "18801:3:13" + "src": "18801:3:163" }, "nodeType": "YulFunctionCall", - "src": "18801:20:13" + "src": "18801:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "18775:6:13" + "src": "18775:6:163" }, "nodeType": "YulFunctionCall", - "src": "18775:47:13" + "src": "18775:47:163" }, "nodeType": "YulExpressionStatement", - "src": "18775:47:13" + "src": "18775:47:163" }, { "nodeType": "YulAssignment", - "src": "18831:139:13", + "src": "18831:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18965:4:13" + "src": "18965:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "18839:124:13" + "src": "18839:124:163" }, "nodeType": "YulFunctionCall", - "src": "18839:131:13" + "src": "18839:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "18831:4:13" + "src": "18831:4:163" } ] } @@ -9762,7 +9762,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "18709:9:13", + "src": "18709:9:163", "type": "" } ], @@ -9770,16 +9770,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "18724:4:13", + "src": "18724:4:163", "type": "" } ], - "src": "18558:419:13" + "src": "18558:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "19089:130:13", + "src": "19089:130:163", "statements": [ { "expression": { @@ -9789,12 +9789,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "19111:6:13" + "src": "19111:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19119:1:13", + "src": "19119:1:163", "type": "", "value": "0" } @@ -9802,16 +9802,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19107:3:13" + "src": "19107:3:163" }, "nodeType": "YulFunctionCall", - "src": "19107:14:13" + "src": "19107:14:163" }, { "hexValue": "45524337323155524953746f726167653a2055524920717565727920666f7220", "kind": "string", "nodeType": "YulLiteral", - "src": "19123:34:13", + "src": "19123:34:163", "type": "", "value": "ERC721URIStorage: URI query for " } @@ -9819,13 +9819,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19100:6:13" + "src": "19100:6:163" }, "nodeType": "YulFunctionCall", - "src": "19100:58:13" + "src": "19100:58:163" }, "nodeType": "YulExpressionStatement", - "src": "19100:58:13" + "src": "19100:58:163" }, { "expression": { @@ -9835,12 +9835,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "19179:6:13" + "src": "19179:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19187:2:13", + "src": "19187:2:163", "type": "", "value": "32" } @@ -9848,16 +9848,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19175:3:13" + "src": "19175:3:163" }, "nodeType": "YulFunctionCall", - "src": "19175:15:13" + "src": "19175:15:163" }, { "hexValue": "6e6f6e6578697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "19192:19:13", + "src": "19192:19:163", "type": "", "value": "nonexistent token" } @@ -9865,13 +9865,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19168:6:13" + "src": "19168:6:163" }, "nodeType": "YulFunctionCall", - "src": "19168:44:13" + "src": "19168:44:163" }, "nodeType": "YulExpressionStatement", - "src": "19168:44:13" + "src": "19168:44:163" } ] }, @@ -9881,31 +9881,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "19081:6:13", + "src": "19081:6:163", "type": "" } ], - "src": "18983:236:13" + "src": "18983:236:163" }, { "body": { "nodeType": "YulBlock", - "src": "19371:220:13", + "src": "19371:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "19381:74:13", + "src": "19381:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19447:3:13" + "src": "19447:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19452:2:13", + "src": "19452:2:163", "type": "", "value": "49" } @@ -9913,16 +9913,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19388:58:13" + "src": "19388:58:163" }, "nodeType": "YulFunctionCall", - "src": "19388:67:13" + "src": "19388:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19381:3:13" + "src": "19381:3:163" } ] }, @@ -9932,34 +9932,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19553:3:13" + "src": "19553:3:163" } ], "functionName": { "name": "store_literal_in_memory_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a", "nodeType": "YulIdentifier", - "src": "19464:88:13" + "src": "19464:88:163" }, "nodeType": "YulFunctionCall", - "src": "19464:93:13" + "src": "19464:93:163" }, "nodeType": "YulExpressionStatement", - "src": "19464:93:13" + "src": "19464:93:163" }, { "nodeType": "YulAssignment", - "src": "19566:19:13", + "src": "19566:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "19577:3:13" + "src": "19577:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19582:2:13", + "src": "19582:2:163", "type": "", "value": "64" } @@ -9967,16 +9967,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19573:3:13" + "src": "19573:3:163" }, "nodeType": "YulFunctionCall", - "src": "19573:12:13" + "src": "19573:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "19566:3:13" + "src": "19566:3:163" } ] } @@ -9988,7 +9988,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "19359:3:13", + "src": "19359:3:163", "type": "" } ], @@ -9996,31 +9996,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "19367:3:13", + "src": "19367:3:163", "type": "" } ], - "src": "19225:366:13" + "src": "19225:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "19768:248:13", + "src": "19768:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "19778:26:13", + "src": "19778:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19790:9:13" + "src": "19790:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19801:2:13", + "src": "19801:2:163", "type": "", "value": "32" } @@ -10028,16 +10028,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19786:3:13" + "src": "19786:3:163" }, "nodeType": "YulFunctionCall", - "src": "19786:18:13" + "src": "19786:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19778:4:13" + "src": "19778:4:163" } ] }, @@ -10049,12 +10049,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19825:9:13" + "src": "19825:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "19836:1:13", + "src": "19836:1:163", "type": "", "value": "0" } @@ -10062,68 +10062,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "19821:3:13" + "src": "19821:3:163" }, "nodeType": "YulFunctionCall", - "src": "19821:17:13" + "src": "19821:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19844:4:13" + "src": "19844:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "19850:9:13" + "src": "19850:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "19840:3:13" + "src": "19840:3:163" }, "nodeType": "YulFunctionCall", - "src": "19840:20:13" + "src": "19840:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "19814:6:13" + "src": "19814:6:163" }, "nodeType": "YulFunctionCall", - "src": "19814:47:13" + "src": "19814:47:163" }, "nodeType": "YulExpressionStatement", - "src": "19814:47:13" + "src": "19814:47:163" }, { "nodeType": "YulAssignment", - "src": "19870:139:13", + "src": "19870:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "20004:4:13" + "src": "20004:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "19878:124:13" + "src": "19878:124:163" }, "nodeType": "YulFunctionCall", - "src": "19878:131:13" + "src": "19878:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "19870:4:13" + "src": "19870:4:163" } ] } @@ -10135,7 +10135,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "19748:9:13", + "src": "19748:9:163", "type": "" } ], @@ -10143,30 +10143,30 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "19763:4:13", + "src": "19763:4:163", "type": "" } ], - "src": "19597:419:13" + "src": "19597:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "20136:34:13", + "src": "20136:34:163", "statements": [ { "nodeType": "YulAssignment", - "src": "20146:18:13", + "src": "20146:18:163", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "20161:3:13" + "src": "20161:3:163" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "20146:11:13" + "src": "20146:11:163" } ] } @@ -10178,13 +10178,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "20108:3:13", + "src": "20108:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "20113:6:13", + "src": "20113:6:163", "type": "" } ], @@ -10192,74 +10192,74 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "20124:11:13", + "src": "20124:11:163", "type": "" } ], - "src": "20022:148:13" + "src": "20022:148:163" }, { "body": { "nodeType": "YulBlock", - "src": "20286:267:13", + "src": "20286:267:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "20296:53:13", + "src": "20296:53:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "20343:5:13" + "src": "20343:5:163" } ], "functionName": { "name": "array_length_t_string_memory_ptr", "nodeType": "YulIdentifier", - "src": "20310:32:13" + "src": "20310:32:163" }, "nodeType": "YulFunctionCall", - "src": "20310:39:13" + "src": "20310:39:163" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "20300:6:13", + "src": "20300:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "20358:96:13", + "src": "20358:96:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20442:3:13" + "src": "20442:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "20447:6:13" + "src": "20447:6:163" } ], "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "20365:76:13" + "src": "20365:76:163" }, "nodeType": "YulFunctionCall", - "src": "20365:89:13" + "src": "20365:89:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20358:3:13" + "src": "20358:3:163" } ] }, @@ -10271,12 +10271,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "20489:5:13" + "src": "20489:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "20496:4:13", + "src": "20496:4:163", "type": "", "value": "0x20" } @@ -10284,62 +10284,62 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20485:3:13" + "src": "20485:3:163" }, "nodeType": "YulFunctionCall", - "src": "20485:16:13" + "src": "20485:16:163" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "20503:3:13" + "src": "20503:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "20508:6:13" + "src": "20508:6:163" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "20463:21:13" + "src": "20463:21:163" }, "nodeType": "YulFunctionCall", - "src": "20463:52:13" + "src": "20463:52:163" }, "nodeType": "YulExpressionStatement", - "src": "20463:52:13" + "src": "20463:52:163" }, { "nodeType": "YulAssignment", - "src": "20524:23:13", + "src": "20524:23:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20535:3:13" + "src": "20535:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "20540:6:13" + "src": "20540:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "20531:3:13" + "src": "20531:3:163" }, "nodeType": "YulFunctionCall", - "src": "20531:16:13" + "src": "20531:16:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "20524:3:13" + "src": "20524:3:163" } ] } @@ -10351,13 +10351,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "20267:5:13", + "src": "20267:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "20274:3:13", + "src": "20274:3:163", "type": "" } ], @@ -10365,94 +10365,94 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "20282:3:13", + "src": "20282:3:163", "type": "" } ], - "src": "20176:377:13" + "src": "20176:377:163" }, { "body": { "nodeType": "YulBlock", - "src": "20743:251:13", + "src": "20743:251:163", "statements": [ { "nodeType": "YulAssignment", - "src": "20754:102:13", + "src": "20754:102:163", "value": { "arguments": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "20843:6:13" + "src": "20843:6:163" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "20852:3:13" + "src": "20852:3:163" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "20761:81:13" + "src": "20761:81:163" }, "nodeType": "YulFunctionCall", - "src": "20761:95:13" + "src": "20761:95:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20754:3:13" + "src": "20754:3:163" } ] }, { "nodeType": "YulAssignment", - "src": "20866:102:13", + "src": "20866:102:163", "value": { "arguments": [ { "name": "value1", "nodeType": "YulIdentifier", - "src": "20955:6:13" + "src": "20955:6:163" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "20964:3:13" + "src": "20964:3:163" } ], "functionName": { "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack", "nodeType": "YulIdentifier", - "src": "20873:81:13" + "src": "20873:81:163" }, "nodeType": "YulFunctionCall", - "src": "20873:95:13" + "src": "20873:95:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "20866:3:13" + "src": "20866:3:163" } ] }, { "nodeType": "YulAssignment", - "src": "20978:10:13", + "src": "20978:10:163", "value": { "name": "pos", "nodeType": "YulIdentifier", - "src": "20985:3:13" + "src": "20985:3:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "20978:3:13" + "src": "20978:3:163" } ] } @@ -10464,19 +10464,19 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "20714:3:13", + "src": "20714:3:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "20720:6:13", + "src": "20720:6:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "20728:6:13", + "src": "20728:6:163", "type": "" } ], @@ -10484,16 +10484,16 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "20739:3:13", + "src": "20739:3:163", "type": "" } ], - "src": "20559:435:13" + "src": "20559:435:163" }, { "body": { "nodeType": "YulBlock", - "src": "21106:125:13", + "src": "21106:125:163", "statements": [ { "expression": { @@ -10503,12 +10503,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "21128:6:13" + "src": "21128:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21136:1:13", + "src": "21136:1:163", "type": "", "value": "0" } @@ -10516,16 +10516,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21124:3:13" + "src": "21124:3:163" }, "nodeType": "YulFunctionCall", - "src": "21124:14:13" + "src": "21124:14:163" }, { "hexValue": "4552433732313a206f70657261746f7220717565727920666f72206e6f6e6578", "kind": "string", "nodeType": "YulLiteral", - "src": "21140:34:13", + "src": "21140:34:163", "type": "", "value": "ERC721: operator query for nonex" } @@ -10533,13 +10533,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21117:6:13" + "src": "21117:6:163" }, "nodeType": "YulFunctionCall", - "src": "21117:58:13" + "src": "21117:58:163" }, "nodeType": "YulExpressionStatement", - "src": "21117:58:13" + "src": "21117:58:163" }, { "expression": { @@ -10549,12 +10549,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "21196:6:13" + "src": "21196:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21204:2:13", + "src": "21204:2:163", "type": "", "value": "32" } @@ -10562,16 +10562,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21192:3:13" + "src": "21192:3:163" }, "nodeType": "YulFunctionCall", - "src": "21192:15:13" + "src": "21192:15:163" }, { "hexValue": "697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "21209:14:13", + "src": "21209:14:163", "type": "", "value": "istent token" } @@ -10579,13 +10579,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21185:6:13" + "src": "21185:6:163" }, "nodeType": "YulFunctionCall", - "src": "21185:39:13" + "src": "21185:39:163" }, "nodeType": "YulExpressionStatement", - "src": "21185:39:13" + "src": "21185:39:163" } ] }, @@ -10595,31 +10595,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "21098:6:13", + "src": "21098:6:163", "type": "" } ], - "src": "21000:231:13" + "src": "21000:231:163" }, { "body": { "nodeType": "YulBlock", - "src": "21383:220:13", + "src": "21383:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "21393:74:13", + "src": "21393:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21459:3:13" + "src": "21459:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21464:2:13", + "src": "21464:2:163", "type": "", "value": "44" } @@ -10627,16 +10627,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "21400:58:13" + "src": "21400:58:163" }, "nodeType": "YulFunctionCall", - "src": "21400:67:13" + "src": "21400:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21393:3:13" + "src": "21393:3:163" } ] }, @@ -10646,34 +10646,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21565:3:13" + "src": "21565:3:163" } ], "functionName": { "name": "store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c", "nodeType": "YulIdentifier", - "src": "21476:88:13" + "src": "21476:88:163" }, "nodeType": "YulFunctionCall", - "src": "21476:93:13" + "src": "21476:93:163" }, "nodeType": "YulExpressionStatement", - "src": "21476:93:13" + "src": "21476:93:163" }, { "nodeType": "YulAssignment", - "src": "21578:19:13", + "src": "21578:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "21589:3:13" + "src": "21589:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21594:2:13", + "src": "21594:2:163", "type": "", "value": "64" } @@ -10681,16 +10681,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21585:3:13" + "src": "21585:3:163" }, "nodeType": "YulFunctionCall", - "src": "21585:12:13" + "src": "21585:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "21578:3:13" + "src": "21578:3:163" } ] } @@ -10702,7 +10702,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "21371:3:13", + "src": "21371:3:163", "type": "" } ], @@ -10710,31 +10710,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "21379:3:13", + "src": "21379:3:163", "type": "" } ], - "src": "21237:366:13" + "src": "21237:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "21780:248:13", + "src": "21780:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "21790:26:13", + "src": "21790:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21802:9:13" + "src": "21802:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21813:2:13", + "src": "21813:2:163", "type": "", "value": "32" } @@ -10742,16 +10742,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21798:3:13" + "src": "21798:3:163" }, "nodeType": "YulFunctionCall", - "src": "21798:18:13" + "src": "21798:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21790:4:13" + "src": "21790:4:163" } ] }, @@ -10763,12 +10763,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21837:9:13" + "src": "21837:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "21848:1:13", + "src": "21848:1:163", "type": "", "value": "0" } @@ -10776,68 +10776,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "21833:3:13" + "src": "21833:3:163" }, "nodeType": "YulFunctionCall", - "src": "21833:17:13" + "src": "21833:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21856:4:13" + "src": "21856:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "21862:9:13" + "src": "21862:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "21852:3:13" + "src": "21852:3:163" }, "nodeType": "YulFunctionCall", - "src": "21852:20:13" + "src": "21852:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "21826:6:13" + "src": "21826:6:163" }, "nodeType": "YulFunctionCall", - "src": "21826:47:13" + "src": "21826:47:163" }, "nodeType": "YulExpressionStatement", - "src": "21826:47:13" + "src": "21826:47:163" }, { "nodeType": "YulAssignment", - "src": "21882:139:13", + "src": "21882:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22016:4:13" + "src": "22016:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "21890:124:13" + "src": "21890:124:163" }, "nodeType": "YulFunctionCall", - "src": "21890:131:13" + "src": "21890:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "21882:4:13" + "src": "21882:4:163" } ] } @@ -10849,7 +10849,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "21760:9:13", + "src": "21760:9:163", "type": "" } ], @@ -10857,16 +10857,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "21775:4:13", + "src": "21775:4:163", "type": "" } ], - "src": "21609:419:13" + "src": "21609:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "22140:118:13", + "src": "22140:118:163", "statements": [ { "expression": { @@ -10876,12 +10876,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22162:6:13" + "src": "22162:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22170:1:13", + "src": "22170:1:163", "type": "", "value": "0" } @@ -10889,16 +10889,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22158:3:13" + "src": "22158:3:163" }, "nodeType": "YulFunctionCall", - "src": "22158:14:13" + "src": "22158:14:163" }, { "hexValue": "4552433732313a207472616e736665722066726f6d20696e636f727265637420", "kind": "string", "nodeType": "YulLiteral", - "src": "22174:34:13", + "src": "22174:34:163", "type": "", "value": "ERC721: transfer from incorrect " } @@ -10906,13 +10906,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22151:6:13" + "src": "22151:6:163" }, "nodeType": "YulFunctionCall", - "src": "22151:58:13" + "src": "22151:58:163" }, "nodeType": "YulExpressionStatement", - "src": "22151:58:13" + "src": "22151:58:163" }, { "expression": { @@ -10922,12 +10922,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "22230:6:13" + "src": "22230:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22238:2:13", + "src": "22238:2:163", "type": "", "value": "32" } @@ -10935,16 +10935,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22226:3:13" + "src": "22226:3:163" }, "nodeType": "YulFunctionCall", - "src": "22226:15:13" + "src": "22226:15:163" }, { "hexValue": "6f776e6572", "kind": "string", "nodeType": "YulLiteral", - "src": "22243:7:13", + "src": "22243:7:163", "type": "", "value": "owner" } @@ -10952,13 +10952,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22219:6:13" + "src": "22219:6:163" }, "nodeType": "YulFunctionCall", - "src": "22219:32:13" + "src": "22219:32:163" }, "nodeType": "YulExpressionStatement", - "src": "22219:32:13" + "src": "22219:32:163" } ] }, @@ -10968,31 +10968,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "22132:6:13", + "src": "22132:6:163", "type": "" } ], - "src": "22034:224:13" + "src": "22034:224:163" }, { "body": { "nodeType": "YulBlock", - "src": "22410:220:13", + "src": "22410:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "22420:74:13", + "src": "22420:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22486:3:13" + "src": "22486:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22491:2:13", + "src": "22491:2:163", "type": "", "value": "37" } @@ -11000,16 +11000,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "22427:58:13" + "src": "22427:58:163" }, "nodeType": "YulFunctionCall", - "src": "22427:67:13" + "src": "22427:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22420:3:13" + "src": "22420:3:163" } ] }, @@ -11019,34 +11019,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22592:3:13" + "src": "22592:3:163" } ], "functionName": { "name": "store_literal_in_memory_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48", "nodeType": "YulIdentifier", - "src": "22503:88:13" + "src": "22503:88:163" }, "nodeType": "YulFunctionCall", - "src": "22503:93:13" + "src": "22503:93:163" }, "nodeType": "YulExpressionStatement", - "src": "22503:93:13" + "src": "22503:93:163" }, { "nodeType": "YulAssignment", - "src": "22605:19:13", + "src": "22605:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "22616:3:13" + "src": "22616:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22621:2:13", + "src": "22621:2:163", "type": "", "value": "64" } @@ -11054,16 +11054,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22612:3:13" + "src": "22612:3:163" }, "nodeType": "YulFunctionCall", - "src": "22612:12:13" + "src": "22612:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "22605:3:13" + "src": "22605:3:163" } ] } @@ -11075,7 +11075,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "22398:3:13", + "src": "22398:3:163", "type": "" } ], @@ -11083,31 +11083,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "22406:3:13", + "src": "22406:3:163", "type": "" } ], - "src": "22264:366:13" + "src": "22264:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "22807:248:13", + "src": "22807:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "22817:26:13", + "src": "22817:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22829:9:13" + "src": "22829:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22840:2:13", + "src": "22840:2:163", "type": "", "value": "32" } @@ -11115,16 +11115,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22825:3:13" + "src": "22825:3:163" }, "nodeType": "YulFunctionCall", - "src": "22825:18:13" + "src": "22825:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22817:4:13" + "src": "22817:4:163" } ] }, @@ -11136,12 +11136,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22864:9:13" + "src": "22864:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "22875:1:13", + "src": "22875:1:163", "type": "", "value": "0" } @@ -11149,68 +11149,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "22860:3:13" + "src": "22860:3:163" }, "nodeType": "YulFunctionCall", - "src": "22860:17:13" + "src": "22860:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22883:4:13" + "src": "22883:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "22889:9:13" + "src": "22889:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "22879:3:13" + "src": "22879:3:163" }, "nodeType": "YulFunctionCall", - "src": "22879:20:13" + "src": "22879:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "22853:6:13" + "src": "22853:6:163" }, "nodeType": "YulFunctionCall", - "src": "22853:47:13" + "src": "22853:47:163" }, "nodeType": "YulExpressionStatement", - "src": "22853:47:13" + "src": "22853:47:163" }, { "nodeType": "YulAssignment", - "src": "22909:139:13", + "src": "22909:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23043:4:13" + "src": "23043:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_277f8ee9d5b4fc3c4149386f24de0fc1bbc63a8210e2197bfd1c0376a2ac5f48_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "22917:124:13" + "src": "22917:124:163" }, "nodeType": "YulFunctionCall", - "src": "22917:131:13" + "src": "22917:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "22909:4:13" + "src": "22909:4:163" } ] } @@ -11222,7 +11222,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "22787:9:13", + "src": "22787:9:163", "type": "" } ], @@ -11230,16 +11230,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "22802:4:13", + "src": "22802:4:163", "type": "" } ], - "src": "22636:419:13" + "src": "22636:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "23167:117:13", + "src": "23167:117:163", "statements": [ { "expression": { @@ -11249,12 +11249,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "23189:6:13" + "src": "23189:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23197:1:13", + "src": "23197:1:163", "type": "", "value": "0" } @@ -11262,16 +11262,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23185:3:13" + "src": "23185:3:163" }, "nodeType": "YulFunctionCall", - "src": "23185:14:13" + "src": "23185:14:163" }, { "hexValue": "4552433732313a207472616e7366657220746f20746865207a65726f20616464", "kind": "string", "nodeType": "YulLiteral", - "src": "23201:34:13", + "src": "23201:34:163", "type": "", "value": "ERC721: transfer to the zero add" } @@ -11279,13 +11279,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23178:6:13" + "src": "23178:6:163" }, "nodeType": "YulFunctionCall", - "src": "23178:58:13" + "src": "23178:58:163" }, "nodeType": "YulExpressionStatement", - "src": "23178:58:13" + "src": "23178:58:163" }, { "expression": { @@ -11295,12 +11295,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "23257:6:13" + "src": "23257:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23265:2:13", + "src": "23265:2:163", "type": "", "value": "32" } @@ -11308,16 +11308,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23253:3:13" + "src": "23253:3:163" }, "nodeType": "YulFunctionCall", - "src": "23253:15:13" + "src": "23253:15:163" }, { "hexValue": "72657373", "kind": "string", "nodeType": "YulLiteral", - "src": "23270:6:13", + "src": "23270:6:163", "type": "", "value": "ress" } @@ -11325,13 +11325,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23246:6:13" + "src": "23246:6:163" }, "nodeType": "YulFunctionCall", - "src": "23246:31:13" + "src": "23246:31:163" }, "nodeType": "YulExpressionStatement", - "src": "23246:31:13" + "src": "23246:31:163" } ] }, @@ -11341,31 +11341,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "23159:6:13", + "src": "23159:6:163", "type": "" } ], - "src": "23061:223:13" + "src": "23061:223:163" }, { "body": { "nodeType": "YulBlock", - "src": "23436:220:13", + "src": "23436:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "23446:74:13", + "src": "23446:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23512:3:13" + "src": "23512:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23517:2:13", + "src": "23517:2:163", "type": "", "value": "36" } @@ -11373,16 +11373,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23453:58:13" + "src": "23453:58:163" }, "nodeType": "YulFunctionCall", - "src": "23453:67:13" + "src": "23453:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23446:3:13" + "src": "23446:3:163" } ] }, @@ -11392,34 +11392,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23618:3:13" + "src": "23618:3:163" } ], "functionName": { "name": "store_literal_in_memory_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4", "nodeType": "YulIdentifier", - "src": "23529:88:13" + "src": "23529:88:163" }, "nodeType": "YulFunctionCall", - "src": "23529:93:13" + "src": "23529:93:163" }, "nodeType": "YulExpressionStatement", - "src": "23529:93:13" + "src": "23529:93:163" }, { "nodeType": "YulAssignment", - "src": "23631:19:13", + "src": "23631:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "23642:3:13" + "src": "23642:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23647:2:13", + "src": "23647:2:163", "type": "", "value": "64" } @@ -11427,16 +11427,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23638:3:13" + "src": "23638:3:163" }, "nodeType": "YulFunctionCall", - "src": "23638:12:13" + "src": "23638:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "23631:3:13" + "src": "23631:3:163" } ] } @@ -11448,7 +11448,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "23424:3:13", + "src": "23424:3:163", "type": "" } ], @@ -11456,31 +11456,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "23432:3:13", + "src": "23432:3:163", "type": "" } ], - "src": "23290:366:13" + "src": "23290:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "23833:248:13", + "src": "23833:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "23843:26:13", + "src": "23843:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23855:9:13" + "src": "23855:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23866:2:13", + "src": "23866:2:163", "type": "", "value": "32" } @@ -11488,16 +11488,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23851:3:13" + "src": "23851:3:163" }, "nodeType": "YulFunctionCall", - "src": "23851:18:13" + "src": "23851:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23843:4:13" + "src": "23843:4:163" } ] }, @@ -11509,12 +11509,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23890:9:13" + "src": "23890:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "23901:1:13", + "src": "23901:1:163", "type": "", "value": "0" } @@ -11522,68 +11522,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "23886:3:13" + "src": "23886:3:163" }, "nodeType": "YulFunctionCall", - "src": "23886:17:13" + "src": "23886:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23909:4:13" + "src": "23909:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "23915:9:13" + "src": "23915:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "23905:3:13" + "src": "23905:3:163" }, "nodeType": "YulFunctionCall", - "src": "23905:20:13" + "src": "23905:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "23879:6:13" + "src": "23879:6:163" }, "nodeType": "YulFunctionCall", - "src": "23879:47:13" + "src": "23879:47:163" }, "nodeType": "YulExpressionStatement", - "src": "23879:47:13" + "src": "23879:47:163" }, { "nodeType": "YulAssignment", - "src": "23935:139:13", + "src": "23935:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "24069:4:13" + "src": "24069:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_455fea98ea03c32d7dd1a6f1426917d80529bf47b3ccbde74e7206e889e709f4_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "23943:124:13" + "src": "23943:124:163" }, "nodeType": "YulFunctionCall", - "src": "23943:131:13" + "src": "23943:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "23935:4:13" + "src": "23935:4:163" } ] } @@ -11595,7 +11595,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "23813:9:13", + "src": "23813:9:163", "type": "" } ], @@ -11603,16 +11603,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "23828:4:13", + "src": "23828:4:163", "type": "" } ], - "src": "23662:419:13" + "src": "23662:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "24115:152:13", + "src": "24115:152:163", "statements": [ { "expression": { @@ -11620,14 +11620,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "24132:1:13", + "src": "24132:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24135:77:13", + "src": "24135:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -11635,13 +11635,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24125:6:13" + "src": "24125:6:163" }, "nodeType": "YulFunctionCall", - "src": "24125:88:13" + "src": "24125:88:163" }, "nodeType": "YulExpressionStatement", - "src": "24125:88:13" + "src": "24125:88:163" }, { "expression": { @@ -11649,14 +11649,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "24229:1:13", + "src": "24229:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24232:4:13", + "src": "24232:4:163", "type": "", "value": "0x11" } @@ -11664,13 +11664,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24222:6:13" + "src": "24222:6:163" }, "nodeType": "YulFunctionCall", - "src": "24222:15:13" + "src": "24222:15:163" }, "nodeType": "YulExpressionStatement", - "src": "24222:15:13" + "src": "24222:15:163" }, { "expression": { @@ -11678,14 +11678,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "24253:1:13", + "src": "24253:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24256:4:13", + "src": "24256:4:163", "type": "", "value": "0x24" } @@ -11693,83 +11693,83 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "24246:6:13" + "src": "24246:6:163" }, "nodeType": "YulFunctionCall", - "src": "24246:15:13" + "src": "24246:15:163" }, "nodeType": "YulExpressionStatement", - "src": "24246:15:13" + "src": "24246:15:163" } ] }, "name": "panic_error_0x11", "nodeType": "YulFunctionDefinition", - "src": "24087:180:13" + "src": "24087:180:163" }, { "body": { "nodeType": "YulBlock", - "src": "24318:146:13", + "src": "24318:146:163", "statements": [ { "nodeType": "YulAssignment", - "src": "24328:25:13", + "src": "24328:25:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24351:1:13" + "src": "24351:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24333:17:13" + "src": "24333:17:163" }, "nodeType": "YulFunctionCall", - "src": "24333:20:13" + "src": "24333:20:163" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24328:1:13" + "src": "24328:1:163" } ] }, { "nodeType": "YulAssignment", - "src": "24362:25:13", + "src": "24362:25:163", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24385:1:13" + "src": "24385:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24367:17:13" + "src": "24367:17:163" }, "nodeType": "YulFunctionCall", - "src": "24367:20:13" + "src": "24367:20:163" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24362:1:13" + "src": "24362:1:163" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24409:22:13", + "src": "24409:22:163", "statements": [ { "expression": { @@ -11777,13 +11777,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24411:16:13" + "src": "24411:16:163" }, "nodeType": "YulFunctionCall", - "src": "24411:18:13" + "src": "24411:18:163" }, "nodeType": "YulExpressionStatement", - "src": "24411:18:13" + "src": "24411:18:163" } ] }, @@ -11792,54 +11792,54 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "24403:1:13" + "src": "24403:1:163" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24406:1:13" + "src": "24406:1:163" } ], "functionName": { "name": "lt", "nodeType": "YulIdentifier", - "src": "24400:2:13" + "src": "24400:2:163" }, "nodeType": "YulFunctionCall", - "src": "24400:8:13" + "src": "24400:8:163" }, "nodeType": "YulIf", - "src": "24397:34:13" + "src": "24397:34:163" }, { "nodeType": "YulAssignment", - "src": "24441:17:13", + "src": "24441:17:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24453:1:13" + "src": "24453:1:163" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24456:1:13" + "src": "24456:1:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24449:3:13" + "src": "24449:3:163" }, "nodeType": "YulFunctionCall", - "src": "24449:9:13" + "src": "24449:9:163" }, "variableNames": [ { "name": "diff", "nodeType": "YulIdentifier", - "src": "24441:4:13" + "src": "24441:4:163" } ] } @@ -11851,13 +11851,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "24304:1:13", + "src": "24304:1:163", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "24307:1:13", + "src": "24307:1:163", "type": "" } ], @@ -11865,75 +11865,75 @@ { "name": "diff", "nodeType": "YulTypedName", - "src": "24313:4:13", + "src": "24313:4:163", "type": "" } ], - "src": "24273:191:13" + "src": "24273:191:163" }, { "body": { "nodeType": "YulBlock", - "src": "24514:261:13", + "src": "24514:261:163", "statements": [ { "nodeType": "YulAssignment", - "src": "24524:25:13", + "src": "24524:25:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24547:1:13" + "src": "24547:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24529:17:13" + "src": "24529:17:163" }, "nodeType": "YulFunctionCall", - "src": "24529:20:13" + "src": "24529:20:163" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24524:1:13" + "src": "24524:1:163" } ] }, { "nodeType": "YulAssignment", - "src": "24558:25:13", + "src": "24558:25:163", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24581:1:13" + "src": "24581:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "24563:17:13" + "src": "24563:17:163" }, "nodeType": "YulFunctionCall", - "src": "24563:20:13" + "src": "24563:20:163" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "24558:1:13" + "src": "24558:1:163" } ] }, { "body": { "nodeType": "YulBlock", - "src": "24721:22:13", + "src": "24721:22:163", "statements": [ { "expression": { @@ -11941,13 +11941,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "24723:16:13" + "src": "24723:16:163" }, "nodeType": "YulFunctionCall", - "src": "24723:18:13" + "src": "24723:18:163" }, "nodeType": "YulExpressionStatement", - "src": "24723:18:13" + "src": "24723:18:163" } ] }, @@ -11956,72 +11956,72 @@ { "name": "x", "nodeType": "YulIdentifier", - "src": "24642:1:13" + "src": "24642:1:163" }, { "arguments": [ { "kind": "number", "nodeType": "YulLiteral", - "src": "24649:66:13", + "src": "24649:66:163", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24717:1:13" + "src": "24717:1:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "24645:3:13" + "src": "24645:3:163" }, "nodeType": "YulFunctionCall", - "src": "24645:74:13" + "src": "24645:74:163" } ], "functionName": { "name": "gt", "nodeType": "YulIdentifier", - "src": "24639:2:13" + "src": "24639:2:163" }, "nodeType": "YulFunctionCall", - "src": "24639:81:13" + "src": "24639:81:163" }, "nodeType": "YulIf", - "src": "24636:107:13" + "src": "24636:107:163" }, { "nodeType": "YulAssignment", - "src": "24753:16:13", + "src": "24753:16:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "24764:1:13" + "src": "24764:1:163" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "24767:1:13" + "src": "24767:1:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24760:3:13" + "src": "24760:3:163" }, "nodeType": "YulFunctionCall", - "src": "24760:9:13" + "src": "24760:9:163" }, "variableNames": [ { "name": "sum", "nodeType": "YulIdentifier", - "src": "24753:3:13" + "src": "24753:3:163" } ] } @@ -12033,13 +12033,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "24501:1:13", + "src": "24501:1:163", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "24504:1:13", + "src": "24504:1:163", "type": "" } ], @@ -12047,16 +12047,16 @@ { "name": "sum", "nodeType": "YulTypedName", - "src": "24510:3:13", + "src": "24510:3:163", "type": "" } ], - "src": "24470:305:13" + "src": "24470:305:163" }, { "body": { "nodeType": "YulBlock", - "src": "24887:69:13", + "src": "24887:69:163", "statements": [ { "expression": { @@ -12066,12 +12066,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "24909:6:13" + "src": "24909:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "24917:1:13", + "src": "24917:1:163", "type": "", "value": "0" } @@ -12079,16 +12079,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "24905:3:13" + "src": "24905:3:163" }, "nodeType": "YulFunctionCall", - "src": "24905:14:13" + "src": "24905:14:163" }, { "hexValue": "4552433732313a20617070726f766520746f2063616c6c6572", "kind": "string", "nodeType": "YulLiteral", - "src": "24921:27:13", + "src": "24921:27:163", "type": "", "value": "ERC721: approve to caller" } @@ -12096,13 +12096,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "24898:6:13" + "src": "24898:6:163" }, "nodeType": "YulFunctionCall", - "src": "24898:51:13" + "src": "24898:51:163" }, "nodeType": "YulExpressionStatement", - "src": "24898:51:13" + "src": "24898:51:163" } ] }, @@ -12112,31 +12112,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "24879:6:13", + "src": "24879:6:163", "type": "" } ], - "src": "24781:175:13" + "src": "24781:175:163" }, { "body": { "nodeType": "YulBlock", - "src": "25108:220:13", + "src": "25108:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "25118:74:13", + "src": "25118:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25184:3:13" + "src": "25184:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25189:2:13", + "src": "25189:2:163", "type": "", "value": "25" } @@ -12144,16 +12144,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "25125:58:13" + "src": "25125:58:163" }, "nodeType": "YulFunctionCall", - "src": "25125:67:13" + "src": "25125:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25118:3:13" + "src": "25118:3:163" } ] }, @@ -12163,34 +12163,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25290:3:13" + "src": "25290:3:163" } ], "functionName": { "name": "store_literal_in_memory_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05", "nodeType": "YulIdentifier", - "src": "25201:88:13" + "src": "25201:88:163" }, "nodeType": "YulFunctionCall", - "src": "25201:93:13" + "src": "25201:93:163" }, "nodeType": "YulExpressionStatement", - "src": "25201:93:13" + "src": "25201:93:163" }, { "nodeType": "YulAssignment", - "src": "25303:19:13", + "src": "25303:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "25314:3:13" + "src": "25314:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25319:2:13", + "src": "25319:2:163", "type": "", "value": "32" } @@ -12198,16 +12198,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25310:3:13" + "src": "25310:3:163" }, "nodeType": "YulFunctionCall", - "src": "25310:12:13" + "src": "25310:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "25303:3:13" + "src": "25303:3:163" } ] } @@ -12219,7 +12219,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "25096:3:13", + "src": "25096:3:163", "type": "" } ], @@ -12227,31 +12227,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "25104:3:13", + "src": "25104:3:163", "type": "" } ], - "src": "24962:366:13" + "src": "24962:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "25505:248:13", + "src": "25505:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "25515:26:13", + "src": "25515:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25527:9:13" + "src": "25527:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25538:2:13", + "src": "25538:2:163", "type": "", "value": "32" } @@ -12259,16 +12259,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25523:3:13" + "src": "25523:3:163" }, "nodeType": "YulFunctionCall", - "src": "25523:18:13" + "src": "25523:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25515:4:13" + "src": "25515:4:163" } ] }, @@ -12280,12 +12280,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25562:9:13" + "src": "25562:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25573:1:13", + "src": "25573:1:163", "type": "", "value": "0" } @@ -12293,68 +12293,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25558:3:13" + "src": "25558:3:163" }, "nodeType": "YulFunctionCall", - "src": "25558:17:13" + "src": "25558:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25581:4:13" + "src": "25581:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "25587:9:13" + "src": "25587:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "25577:3:13" + "src": "25577:3:163" }, "nodeType": "YulFunctionCall", - "src": "25577:20:13" + "src": "25577:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25551:6:13" + "src": "25551:6:163" }, "nodeType": "YulFunctionCall", - "src": "25551:47:13" + "src": "25551:47:163" }, "nodeType": "YulExpressionStatement", - "src": "25551:47:13" + "src": "25551:47:163" }, { "nodeType": "YulAssignment", - "src": "25607:139:13", + "src": "25607:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25741:4:13" + "src": "25741:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_45fe4329685be5ecd250fd0e6a25aea0ea4d0e30fb6a73c118b95749e6d70d05_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "25615:124:13" + "src": "25615:124:163" }, "nodeType": "YulFunctionCall", - "src": "25615:131:13" + "src": "25615:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "25607:4:13" + "src": "25607:4:163" } ] } @@ -12366,7 +12366,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "25485:9:13", + "src": "25485:9:163", "type": "" } ], @@ -12374,16 +12374,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "25500:4:13", + "src": "25500:4:163", "type": "" } ], - "src": "25334:419:13" + "src": "25334:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "25865:131:13", + "src": "25865:131:163", "statements": [ { "expression": { @@ -12393,12 +12393,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "25887:6:13" + "src": "25887:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25895:1:13", + "src": "25895:1:163", "type": "", "value": "0" } @@ -12406,16 +12406,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25883:3:13" + "src": "25883:3:163" }, "nodeType": "YulFunctionCall", - "src": "25883:14:13" + "src": "25883:14:163" }, { "hexValue": "4552433732313a207472616e7366657220746f206e6f6e204552433732315265", "kind": "string", "nodeType": "YulLiteral", - "src": "25899:34:13", + "src": "25899:34:163", "type": "", "value": "ERC721: transfer to non ERC721Re" } @@ -12423,13 +12423,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25876:6:13" + "src": "25876:6:163" }, "nodeType": "YulFunctionCall", - "src": "25876:58:13" + "src": "25876:58:163" }, "nodeType": "YulExpressionStatement", - "src": "25876:58:13" + "src": "25876:58:163" }, { "expression": { @@ -12439,12 +12439,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "25955:6:13" + "src": "25955:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "25963:2:13", + "src": "25963:2:163", "type": "", "value": "32" } @@ -12452,16 +12452,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "25951:3:13" + "src": "25951:3:163" }, "nodeType": "YulFunctionCall", - "src": "25951:15:13" + "src": "25951:15:163" }, { "hexValue": "63656976657220696d706c656d656e746572", "kind": "string", "nodeType": "YulLiteral", - "src": "25968:20:13", + "src": "25968:20:163", "type": "", "value": "ceiver implementer" } @@ -12469,13 +12469,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "25944:6:13" + "src": "25944:6:163" }, "nodeType": "YulFunctionCall", - "src": "25944:45:13" + "src": "25944:45:163" }, "nodeType": "YulExpressionStatement", - "src": "25944:45:13" + "src": "25944:45:163" } ] }, @@ -12485,31 +12485,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "25857:6:13", + "src": "25857:6:163", "type": "" } ], - "src": "25759:237:13" + "src": "25759:237:163" }, { "body": { "nodeType": "YulBlock", - "src": "26148:220:13", + "src": "26148:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "26158:74:13", + "src": "26158:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "26224:3:13" + "src": "26224:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26229:2:13", + "src": "26229:2:163", "type": "", "value": "50" } @@ -12517,16 +12517,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "26165:58:13" + "src": "26165:58:163" }, "nodeType": "YulFunctionCall", - "src": "26165:67:13" + "src": "26165:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "26158:3:13" + "src": "26158:3:163" } ] }, @@ -12536,34 +12536,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "26330:3:13" + "src": "26330:3:163" } ], "functionName": { "name": "store_literal_in_memory_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e", "nodeType": "YulIdentifier", - "src": "26241:88:13" + "src": "26241:88:163" }, "nodeType": "YulFunctionCall", - "src": "26241:93:13" + "src": "26241:93:163" }, "nodeType": "YulExpressionStatement", - "src": "26241:93:13" + "src": "26241:93:163" }, { "nodeType": "YulAssignment", - "src": "26343:19:13", + "src": "26343:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "26354:3:13" + "src": "26354:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26359:2:13", + "src": "26359:2:163", "type": "", "value": "64" } @@ -12571,16 +12571,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26350:3:13" + "src": "26350:3:163" }, "nodeType": "YulFunctionCall", - "src": "26350:12:13" + "src": "26350:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "26343:3:13" + "src": "26343:3:163" } ] } @@ -12592,7 +12592,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "26136:3:13", + "src": "26136:3:163", "type": "" } ], @@ -12600,31 +12600,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "26144:3:13", + "src": "26144:3:163", "type": "" } ], - "src": "26002:366:13" + "src": "26002:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "26545:248:13", + "src": "26545:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "26555:26:13", + "src": "26555:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26567:9:13" + "src": "26567:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26578:2:13", + "src": "26578:2:163", "type": "", "value": "32" } @@ -12632,16 +12632,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26563:3:13" + "src": "26563:3:163" }, "nodeType": "YulFunctionCall", - "src": "26563:18:13" + "src": "26563:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26555:4:13" + "src": "26555:4:163" } ] }, @@ -12653,12 +12653,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26602:9:13" + "src": "26602:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26613:1:13", + "src": "26613:1:163", "type": "", "value": "0" } @@ -12666,68 +12666,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26598:3:13" + "src": "26598:3:163" }, "nodeType": "YulFunctionCall", - "src": "26598:17:13" + "src": "26598:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26621:4:13" + "src": "26621:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "26627:9:13" + "src": "26627:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "26617:3:13" + "src": "26617:3:163" }, "nodeType": "YulFunctionCall", - "src": "26617:20:13" + "src": "26617:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26591:6:13" + "src": "26591:6:163" }, "nodeType": "YulFunctionCall", - "src": "26591:47:13" + "src": "26591:47:163" }, "nodeType": "YulExpressionStatement", - "src": "26591:47:13" + "src": "26591:47:163" }, { "nodeType": "YulAssignment", - "src": "26647:139:13", + "src": "26647:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26781:4:13" + "src": "26781:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_1e766a06da43a53d0f4c380e06e5a342e14d5af1bf8501996c844905530ca84e_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "26655:124:13" + "src": "26655:124:163" }, "nodeType": "YulFunctionCall", - "src": "26655:131:13" + "src": "26655:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "26647:4:13" + "src": "26647:4:163" } ] } @@ -12739,7 +12739,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "26525:9:13", + "src": "26525:9:163", "type": "" } ], @@ -12747,16 +12747,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "26540:4:13", + "src": "26540:4:163", "type": "" } ], - "src": "26374:419:13" + "src": "26374:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "26905:128:13", + "src": "26905:128:163", "statements": [ { "expression": { @@ -12766,12 +12766,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "26927:6:13" + "src": "26927:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "26935:1:13", + "src": "26935:1:163", "type": "", "value": "0" } @@ -12779,16 +12779,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26923:3:13" + "src": "26923:3:163" }, "nodeType": "YulFunctionCall", - "src": "26923:14:13" + "src": "26923:14:163" }, { "hexValue": "4552433732314d657461646174613a2055524920717565727920666f72206e6f", "kind": "string", "nodeType": "YulLiteral", - "src": "26939:34:13", + "src": "26939:34:163", "type": "", "value": "ERC721Metadata: URI query for no" } @@ -12796,13 +12796,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26916:6:13" + "src": "26916:6:163" }, "nodeType": "YulFunctionCall", - "src": "26916:58:13" + "src": "26916:58:163" }, "nodeType": "YulExpressionStatement", - "src": "26916:58:13" + "src": "26916:58:163" }, { "expression": { @@ -12812,12 +12812,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "26995:6:13" + "src": "26995:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27003:2:13", + "src": "27003:2:163", "type": "", "value": "32" } @@ -12825,16 +12825,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "26991:3:13" + "src": "26991:3:163" }, "nodeType": "YulFunctionCall", - "src": "26991:15:13" + "src": "26991:15:163" }, { "hexValue": "6e6578697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "27008:17:13", + "src": "27008:17:163", "type": "", "value": "nexistent token" } @@ -12842,13 +12842,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "26984:6:13" + "src": "26984:6:163" }, "nodeType": "YulFunctionCall", - "src": "26984:42:13" + "src": "26984:42:163" }, "nodeType": "YulExpressionStatement", - "src": "26984:42:13" + "src": "26984:42:163" } ] }, @@ -12858,31 +12858,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "26897:6:13", + "src": "26897:6:163", "type": "" } ], - "src": "26799:234:13" + "src": "26799:234:163" }, { "body": { "nodeType": "YulBlock", - "src": "27185:220:13", + "src": "27185:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "27195:74:13", + "src": "27195:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27261:3:13" + "src": "27261:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27266:2:13", + "src": "27266:2:163", "type": "", "value": "47" } @@ -12890,16 +12890,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "27202:58:13" + "src": "27202:58:163" }, "nodeType": "YulFunctionCall", - "src": "27202:67:13" + "src": "27202:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27195:3:13" + "src": "27195:3:163" } ] }, @@ -12909,34 +12909,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27367:3:13" + "src": "27367:3:163" } ], "functionName": { "name": "store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb", "nodeType": "YulIdentifier", - "src": "27278:88:13" + "src": "27278:88:163" }, "nodeType": "YulFunctionCall", - "src": "27278:93:13" + "src": "27278:93:163" }, "nodeType": "YulExpressionStatement", - "src": "27278:93:13" + "src": "27278:93:163" }, { "nodeType": "YulAssignment", - "src": "27380:19:13", + "src": "27380:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "27391:3:13" + "src": "27391:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27396:2:13", + "src": "27396:2:163", "type": "", "value": "64" } @@ -12944,16 +12944,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27387:3:13" + "src": "27387:3:163" }, "nodeType": "YulFunctionCall", - "src": "27387:12:13" + "src": "27387:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "27380:3:13" + "src": "27380:3:163" } ] } @@ -12965,7 +12965,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "27173:3:13", + "src": "27173:3:163", "type": "" } ], @@ -12973,31 +12973,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "27181:3:13", + "src": "27181:3:163", "type": "" } ], - "src": "27039:366:13" + "src": "27039:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "27582:248:13", + "src": "27582:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "27592:26:13", + "src": "27592:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27604:9:13" + "src": "27604:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27615:2:13", + "src": "27615:2:163", "type": "", "value": "32" } @@ -13005,16 +13005,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27600:3:13" + "src": "27600:3:163" }, "nodeType": "YulFunctionCall", - "src": "27600:18:13" + "src": "27600:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27592:4:13" + "src": "27592:4:163" } ] }, @@ -13026,12 +13026,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27639:9:13" + "src": "27639:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27650:1:13", + "src": "27650:1:163", "type": "", "value": "0" } @@ -13039,68 +13039,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27635:3:13" + "src": "27635:3:163" }, "nodeType": "YulFunctionCall", - "src": "27635:17:13" + "src": "27635:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27658:4:13" + "src": "27658:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "27664:9:13" + "src": "27664:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "27654:3:13" + "src": "27654:3:163" }, "nodeType": "YulFunctionCall", - "src": "27654:20:13" + "src": "27654:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27628:6:13" + "src": "27628:6:163" }, "nodeType": "YulFunctionCall", - "src": "27628:47:13" + "src": "27628:47:163" }, "nodeType": "YulExpressionStatement", - "src": "27628:47:13" + "src": "27628:47:163" }, { "nodeType": "YulAssignment", - "src": "27684:139:13", + "src": "27684:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27818:4:13" + "src": "27818:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "27692:124:13" + "src": "27692:124:163" }, "nodeType": "YulFunctionCall", - "src": "27692:131:13" + "src": "27692:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "27684:4:13" + "src": "27684:4:163" } ] } @@ -13112,7 +13112,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "27562:9:13", + "src": "27562:9:163", "type": "" } ], @@ -13120,16 +13120,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "27577:4:13", + "src": "27577:4:163", "type": "" } ], - "src": "27411:419:13" + "src": "27411:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "27942:76:13", + "src": "27942:76:163", "statements": [ { "expression": { @@ -13139,12 +13139,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "27964:6:13" + "src": "27964:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "27972:1:13", + "src": "27972:1:163", "type": "", "value": "0" } @@ -13152,16 +13152,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "27960:3:13" + "src": "27960:3:163" }, "nodeType": "YulFunctionCall", - "src": "27960:14:13" + "src": "27960:14:163" }, { "hexValue": "4552433732313a206d696e7420746f20746865207a65726f2061646472657373", "kind": "string", "nodeType": "YulLiteral", - "src": "27976:34:13", + "src": "27976:34:163", "type": "", "value": "ERC721: mint to the zero address" } @@ -13169,13 +13169,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "27953:6:13" + "src": "27953:6:163" }, "nodeType": "YulFunctionCall", - "src": "27953:58:13" + "src": "27953:58:163" }, "nodeType": "YulExpressionStatement", - "src": "27953:58:13" + "src": "27953:58:163" } ] }, @@ -13185,31 +13185,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "27934:6:13", + "src": "27934:6:163", "type": "" } ], - "src": "27836:182:13" + "src": "27836:182:163" }, { "body": { "nodeType": "YulBlock", - "src": "28170:220:13", + "src": "28170:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "28180:74:13", + "src": "28180:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28246:3:13" + "src": "28246:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28251:2:13", + "src": "28251:2:163", "type": "", "value": "32" } @@ -13217,16 +13217,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "28187:58:13" + "src": "28187:58:163" }, "nodeType": "YulFunctionCall", - "src": "28187:67:13" + "src": "28187:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28180:3:13" + "src": "28180:3:163" } ] }, @@ -13236,34 +13236,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28352:3:13" + "src": "28352:3:163" } ], "functionName": { "name": "store_literal_in_memory_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6", "nodeType": "YulIdentifier", - "src": "28263:88:13" + "src": "28263:88:163" }, "nodeType": "YulFunctionCall", - "src": "28263:93:13" + "src": "28263:93:163" }, "nodeType": "YulExpressionStatement", - "src": "28263:93:13" + "src": "28263:93:163" }, { "nodeType": "YulAssignment", - "src": "28365:19:13", + "src": "28365:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "28376:3:13" + "src": "28376:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28381:2:13", + "src": "28381:2:163", "type": "", "value": "32" } @@ -13271,16 +13271,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28372:3:13" + "src": "28372:3:163" }, "nodeType": "YulFunctionCall", - "src": "28372:12:13" + "src": "28372:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "28365:3:13" + "src": "28365:3:163" } ] } @@ -13292,7 +13292,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "28158:3:13", + "src": "28158:3:163", "type": "" } ], @@ -13300,31 +13300,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "28166:3:13", + "src": "28166:3:163", "type": "" } ], - "src": "28024:366:13" + "src": "28024:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "28567:248:13", + "src": "28567:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "28577:26:13", + "src": "28577:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28589:9:13" + "src": "28589:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28600:2:13", + "src": "28600:2:163", "type": "", "value": "32" } @@ -13332,16 +13332,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28585:3:13" + "src": "28585:3:163" }, "nodeType": "YulFunctionCall", - "src": "28585:18:13" + "src": "28585:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28577:4:13" + "src": "28577:4:163" } ] }, @@ -13353,12 +13353,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28624:9:13" + "src": "28624:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28635:1:13", + "src": "28635:1:163", "type": "", "value": "0" } @@ -13366,68 +13366,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28620:3:13" + "src": "28620:3:163" }, "nodeType": "YulFunctionCall", - "src": "28620:17:13" + "src": "28620:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28643:4:13" + "src": "28643:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "28649:9:13" + "src": "28649:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "28639:3:13" + "src": "28639:3:163" }, "nodeType": "YulFunctionCall", - "src": "28639:20:13" + "src": "28639:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28613:6:13" + "src": "28613:6:163" }, "nodeType": "YulFunctionCall", - "src": "28613:47:13" + "src": "28613:47:163" }, "nodeType": "YulExpressionStatement", - "src": "28613:47:13" + "src": "28613:47:163" }, { "nodeType": "YulAssignment", - "src": "28669:139:13", + "src": "28669:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28803:4:13" + "src": "28803:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_8a66f4bb6512ffbfcc3db9b42318eb65f26ac15163eaa9a1e5cfa7bee9d1c7c6_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "28677:124:13" + "src": "28677:124:163" }, "nodeType": "YulFunctionCall", - "src": "28677:131:13" + "src": "28677:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "28669:4:13" + "src": "28669:4:163" } ] } @@ -13439,7 +13439,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "28547:9:13", + "src": "28547:9:163", "type": "" } ], @@ -13447,16 +13447,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "28562:4:13", + "src": "28562:4:163", "type": "" } ], - "src": "28396:419:13" + "src": "28396:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "28927:72:13", + "src": "28927:72:163", "statements": [ { "expression": { @@ -13466,12 +13466,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "28949:6:13" + "src": "28949:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "28957:1:13", + "src": "28957:1:163", "type": "", "value": "0" } @@ -13479,16 +13479,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "28945:3:13" + "src": "28945:3:163" }, "nodeType": "YulFunctionCall", - "src": "28945:14:13" + "src": "28945:14:163" }, { "hexValue": "4552433732313a20746f6b656e20616c7265616479206d696e746564", "kind": "string", "nodeType": "YulLiteral", - "src": "28961:30:13", + "src": "28961:30:163", "type": "", "value": "ERC721: token already minted" } @@ -13496,13 +13496,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "28938:6:13" + "src": "28938:6:163" }, "nodeType": "YulFunctionCall", - "src": "28938:54:13" + "src": "28938:54:163" }, "nodeType": "YulExpressionStatement", - "src": "28938:54:13" + "src": "28938:54:163" } ] }, @@ -13512,31 +13512,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "28919:6:13", + "src": "28919:6:163", "type": "" } ], - "src": "28821:178:13" + "src": "28821:178:163" }, { "body": { "nodeType": "YulBlock", - "src": "29151:220:13", + "src": "29151:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "29161:74:13", + "src": "29161:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29227:3:13" + "src": "29227:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29232:2:13", + "src": "29232:2:163", "type": "", "value": "28" } @@ -13544,16 +13544,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "29168:58:13" + "src": "29168:58:163" }, "nodeType": "YulFunctionCall", - "src": "29168:67:13" + "src": "29168:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29161:3:13" + "src": "29161:3:163" } ] }, @@ -13563,34 +13563,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29333:3:13" + "src": "29333:3:163" } ], "functionName": { "name": "store_literal_in_memory_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57", "nodeType": "YulIdentifier", - "src": "29244:88:13" + "src": "29244:88:163" }, "nodeType": "YulFunctionCall", - "src": "29244:93:13" + "src": "29244:93:163" }, "nodeType": "YulExpressionStatement", - "src": "29244:93:13" + "src": "29244:93:163" }, { "nodeType": "YulAssignment", - "src": "29346:19:13", + "src": "29346:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "29357:3:13" + "src": "29357:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29362:2:13", + "src": "29362:2:163", "type": "", "value": "32" } @@ -13598,16 +13598,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29353:3:13" + "src": "29353:3:163" }, "nodeType": "YulFunctionCall", - "src": "29353:12:13" + "src": "29353:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "29346:3:13" + "src": "29346:3:163" } ] } @@ -13619,7 +13619,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "29139:3:13", + "src": "29139:3:163", "type": "" } ], @@ -13627,31 +13627,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "29147:3:13", + "src": "29147:3:163", "type": "" } ], - "src": "29005:366:13" + "src": "29005:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "29548:248:13", + "src": "29548:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "29558:26:13", + "src": "29558:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29570:9:13" + "src": "29570:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29581:2:13", + "src": "29581:2:163", "type": "", "value": "32" } @@ -13659,16 +13659,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29566:3:13" + "src": "29566:3:163" }, "nodeType": "YulFunctionCall", - "src": "29566:18:13" + "src": "29566:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29558:4:13" + "src": "29558:4:163" } ] }, @@ -13680,12 +13680,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29605:9:13" + "src": "29605:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29616:1:13", + "src": "29616:1:163", "type": "", "value": "0" } @@ -13693,68 +13693,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29601:3:13" + "src": "29601:3:163" }, "nodeType": "YulFunctionCall", - "src": "29601:17:13" + "src": "29601:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29624:4:13" + "src": "29624:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "29630:9:13" + "src": "29630:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "29620:3:13" + "src": "29620:3:163" }, "nodeType": "YulFunctionCall", - "src": "29620:20:13" + "src": "29620:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29594:6:13" + "src": "29594:6:163" }, "nodeType": "YulFunctionCall", - "src": "29594:47:13" + "src": "29594:47:163" }, "nodeType": "YulExpressionStatement", - "src": "29594:47:13" + "src": "29594:47:163" }, { "nodeType": "YulAssignment", - "src": "29650:139:13", + "src": "29650:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29784:4:13" + "src": "29784:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_2a63ce106ef95058ed21fd07c42a10f11dc5c32ac13a4e847923f7759f635d57_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "29658:124:13" + "src": "29658:124:163" }, "nodeType": "YulFunctionCall", - "src": "29658:131:13" + "src": "29658:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "29650:4:13" + "src": "29650:4:163" } ] } @@ -13766,7 +13766,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "29528:9:13", + "src": "29528:9:163", "type": "" } ], @@ -13774,16 +13774,16 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "29543:4:13", + "src": "29543:4:163", "type": "" } ], - "src": "29377:419:13" + "src": "29377:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "29908:127:13", + "src": "29908:127:163", "statements": [ { "expression": { @@ -13793,12 +13793,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29930:6:13" + "src": "29930:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "29938:1:13", + "src": "29938:1:163", "type": "", "value": "0" } @@ -13806,16 +13806,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29926:3:13" + "src": "29926:3:163" }, "nodeType": "YulFunctionCall", - "src": "29926:14:13" + "src": "29926:14:163" }, { "hexValue": "45524337323155524953746f726167653a2055524920736574206f66206e6f6e", "kind": "string", "nodeType": "YulLiteral", - "src": "29942:34:13", + "src": "29942:34:163", "type": "", "value": "ERC721URIStorage: URI set of non" } @@ -13823,13 +13823,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29919:6:13" + "src": "29919:6:163" }, "nodeType": "YulFunctionCall", - "src": "29919:58:13" + "src": "29919:58:163" }, "nodeType": "YulExpressionStatement", - "src": "29919:58:13" + "src": "29919:58:163" }, { "expression": { @@ -13839,12 +13839,12 @@ { "name": "memPtr", "nodeType": "YulIdentifier", - "src": "29998:6:13" + "src": "29998:6:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30006:2:13", + "src": "30006:2:163", "type": "", "value": "32" } @@ -13852,16 +13852,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "29994:3:13" + "src": "29994:3:163" }, "nodeType": "YulFunctionCall", - "src": "29994:15:13" + "src": "29994:15:163" }, { "hexValue": "6578697374656e7420746f6b656e", "kind": "string", "nodeType": "YulLiteral", - "src": "30011:16:13", + "src": "30011:16:163", "type": "", "value": "existent token" } @@ -13869,13 +13869,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "29987:6:13" + "src": "29987:6:163" }, "nodeType": "YulFunctionCall", - "src": "29987:41:13" + "src": "29987:41:163" }, "nodeType": "YulExpressionStatement", - "src": "29987:41:13" + "src": "29987:41:163" } ] }, @@ -13885,31 +13885,31 @@ { "name": "memPtr", "nodeType": "YulTypedName", - "src": "29900:6:13", + "src": "29900:6:163", "type": "" } ], - "src": "29802:233:13" + "src": "29802:233:163" }, { "body": { "nodeType": "YulBlock", - "src": "30187:220:13", + "src": "30187:220:163", "statements": [ { "nodeType": "YulAssignment", - "src": "30197:74:13", + "src": "30197:74:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30263:3:13" + "src": "30263:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30268:2:13", + "src": "30268:2:163", "type": "", "value": "46" } @@ -13917,16 +13917,16 @@ "functionName": { "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "30204:58:13" + "src": "30204:58:163" }, "nodeType": "YulFunctionCall", - "src": "30204:67:13" + "src": "30204:67:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30197:3:13" + "src": "30197:3:163" } ] }, @@ -13936,34 +13936,34 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30369:3:13" + "src": "30369:3:163" } ], "functionName": { "name": "store_literal_in_memory_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4", "nodeType": "YulIdentifier", - "src": "30280:88:13" + "src": "30280:88:163" }, "nodeType": "YulFunctionCall", - "src": "30280:93:13" + "src": "30280:93:163" }, "nodeType": "YulExpressionStatement", - "src": "30280:93:13" + "src": "30280:93:163" }, { "nodeType": "YulAssignment", - "src": "30382:19:13", + "src": "30382:19:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "30393:3:13" + "src": "30393:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30398:2:13", + "src": "30398:2:163", "type": "", "value": "64" } @@ -13971,16 +13971,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30389:3:13" + "src": "30389:3:163" }, "nodeType": "YulFunctionCall", - "src": "30389:12:13" + "src": "30389:12:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "30382:3:13" + "src": "30382:3:163" } ] } @@ -13992,7 +13992,7 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "30175:3:13", + "src": "30175:3:163", "type": "" } ], @@ -14000,31 +14000,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "30183:3:13", + "src": "30183:3:163", "type": "" } ], - "src": "30041:366:13" + "src": "30041:366:163" }, { "body": { "nodeType": "YulBlock", - "src": "30584:248:13", + "src": "30584:248:163", "statements": [ { "nodeType": "YulAssignment", - "src": "30594:26:13", + "src": "30594:26:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30606:9:13" + "src": "30606:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30617:2:13", + "src": "30617:2:163", "type": "", "value": "32" } @@ -14032,16 +14032,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30602:3:13" + "src": "30602:3:163" }, "nodeType": "YulFunctionCall", - "src": "30602:18:13" + "src": "30602:18:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30594:4:13" + "src": "30594:4:163" } ] }, @@ -14053,12 +14053,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30641:9:13" + "src": "30641:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "30652:1:13", + "src": "30652:1:163", "type": "", "value": "0" } @@ -14066,68 +14066,68 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "30637:3:13" + "src": "30637:3:163" }, "nodeType": "YulFunctionCall", - "src": "30637:17:13" + "src": "30637:17:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30660:4:13" + "src": "30660:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "30666:9:13" + "src": "30666:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "30656:3:13" + "src": "30656:3:163" }, "nodeType": "YulFunctionCall", - "src": "30656:20:13" + "src": "30656:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "30630:6:13" + "src": "30630:6:163" }, "nodeType": "YulFunctionCall", - "src": "30630:47:13" + "src": "30630:47:163" }, "nodeType": "YulExpressionStatement", - "src": "30630:47:13" + "src": "30630:47:163" }, { "nodeType": "YulAssignment", - "src": "30686:139:13", + "src": "30686:139:163", "value": { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30820:4:13" + "src": "30820:4:163" } ], "functionName": { "name": "abi_encode_t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4_to_t_string_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "30694:124:13" + "src": "30694:124:163" }, "nodeType": "YulFunctionCall", - "src": "30694:131:13" + "src": "30694:131:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "30686:4:13" + "src": "30686:4:163" } ] } @@ -14139,7 +14139,7 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "30564:9:13", + "src": "30564:9:163", "type": "" } ], @@ -14147,41 +14147,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "30579:4:13", + "src": "30579:4:163", "type": "" } ], - "src": "30413:419:13" + "src": "30413:419:163" }, { "body": { "nodeType": "YulBlock", - "src": "30896:40:13", + "src": "30896:40:163", "statements": [ { "nodeType": "YulAssignment", - "src": "30907:22:13", + "src": "30907:22:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "30923:5:13" + "src": "30923:5:163" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "30917:5:13" + "src": "30917:5:163" }, "nodeType": "YulFunctionCall", - "src": "30917:12:13" + "src": "30917:12:163" }, "variableNames": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "30907:6:13" + "src": "30907:6:163" } ] } @@ -14193,7 +14193,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "30879:5:13", + "src": "30879:5:163", "type": "" } ], @@ -14201,16 +14201,16 @@ { "name": "length", "nodeType": "YulTypedName", - "src": "30889:6:13", + "src": "30889:6:163", "type": "" } ], - "src": "30838:98:13" + "src": "30838:98:163" }, { "body": { "nodeType": "YulBlock", - "src": "31037:73:13", + "src": "31037:73:163", "statements": [ { "expression": { @@ -14218,39 +14218,39 @@ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31054:3:13" + "src": "31054:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "31059:6:13" + "src": "31059:6:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31047:6:13" + "src": "31047:6:163" }, "nodeType": "YulFunctionCall", - "src": "31047:19:13" + "src": "31047:19:163" }, "nodeType": "YulExpressionStatement", - "src": "31047:19:13" + "src": "31047:19:163" }, { "nodeType": "YulAssignment", - "src": "31075:29:13", + "src": "31075:29:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31094:3:13" + "src": "31094:3:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31099:4:13", + "src": "31099:4:163", "type": "", "value": "0x20" } @@ -14258,16 +14258,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31090:3:13" + "src": "31090:3:163" }, "nodeType": "YulFunctionCall", - "src": "31090:14:13" + "src": "31090:14:163" }, "variableNames": [ { "name": "updated_pos", "nodeType": "YulIdentifier", - "src": "31075:11:13" + "src": "31075:11:163" } ] } @@ -14279,13 +14279,13 @@ { "name": "pos", "nodeType": "YulTypedName", - "src": "31009:3:13", + "src": "31009:3:163", "type": "" }, { "name": "length", "nodeType": "YulTypedName", - "src": "31014:6:13", + "src": "31014:6:163", "type": "" } ], @@ -14293,74 +14293,74 @@ { "name": "updated_pos", "nodeType": "YulTypedName", - "src": "31025:11:13", + "src": "31025:11:163", "type": "" } ], - "src": "30942:168:13" + "src": "30942:168:163" }, { "body": { "nodeType": "YulBlock", - "src": "31206:270:13", + "src": "31206:270:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "31216:52:13", + "src": "31216:52:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "31262:5:13" + "src": "31262:5:163" } ], "functionName": { "name": "array_length_t_bytes_memory_ptr", "nodeType": "YulIdentifier", - "src": "31230:31:13" + "src": "31230:31:163" }, "nodeType": "YulFunctionCall", - "src": "31230:38:13" + "src": "31230:38:163" }, "variables": [ { "name": "length", "nodeType": "YulTypedName", - "src": "31220:6:13", + "src": "31220:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "31277:77:13", + "src": "31277:77:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31342:3:13" + "src": "31342:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "31347:6:13" + "src": "31347:6:163" } ], "functionName": { "name": "array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "31284:57:13" + "src": "31284:57:163" }, "nodeType": "YulFunctionCall", - "src": "31284:70:13" + "src": "31284:70:163" }, "variableNames": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31277:3:13" + "src": "31277:3:163" } ] }, @@ -14372,12 +14372,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "31389:5:13" + "src": "31389:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31396:4:13", + "src": "31396:4:163", "type": "", "value": "0x20" } @@ -14385,73 +14385,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31385:3:13" + "src": "31385:3:163" }, "nodeType": "YulFunctionCall", - "src": "31385:16:13" + "src": "31385:16:163" }, { "name": "pos", "nodeType": "YulIdentifier", - "src": "31403:3:13" + "src": "31403:3:163" }, { "name": "length", "nodeType": "YulIdentifier", - "src": "31408:6:13" + "src": "31408:6:163" } ], "functionName": { "name": "copy_memory_to_memory", "nodeType": "YulIdentifier", - "src": "31363:21:13" + "src": "31363:21:163" }, "nodeType": "YulFunctionCall", - "src": "31363:52:13" + "src": "31363:52:163" }, "nodeType": "YulExpressionStatement", - "src": "31363:52:13" + "src": "31363:52:163" }, { "nodeType": "YulAssignment", - "src": "31424:46:13", + "src": "31424:46:163", "value": { "arguments": [ { "name": "pos", "nodeType": "YulIdentifier", - "src": "31435:3:13" + "src": "31435:3:163" }, { "arguments": [ { "name": "length", "nodeType": "YulIdentifier", - "src": "31462:6:13" + "src": "31462:6:163" } ], "functionName": { "name": "round_up_to_mul_of_32", "nodeType": "YulIdentifier", - "src": "31440:21:13" + "src": "31440:21:163" }, "nodeType": "YulFunctionCall", - "src": "31440:29:13" + "src": "31440:29:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31431:3:13" + "src": "31431:3:163" }, "nodeType": "YulFunctionCall", - "src": "31431:39:13" + "src": "31431:39:163" }, "variableNames": [ { "name": "end", "nodeType": "YulIdentifier", - "src": "31424:3:13" + "src": "31424:3:163" } ] } @@ -14463,13 +14463,13 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "31187:5:13", + "src": "31187:5:163", "type": "" }, { "name": "pos", "nodeType": "YulTypedName", - "src": "31194:3:13", + "src": "31194:3:163", "type": "" } ], @@ -14477,31 +14477,31 @@ { "name": "end", "nodeType": "YulTypedName", - "src": "31202:3:13", + "src": "31202:3:163", "type": "" } ], - "src": "31116:360:13" + "src": "31116:360:163" }, { "body": { "nodeType": "YulBlock", - "src": "31682:440:13", + "src": "31682:440:163", "statements": [ { "nodeType": "YulAssignment", - "src": "31692:27:13", + "src": "31692:27:163", "value": { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31704:9:13" + "src": "31704:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31715:3:13", + "src": "31715:3:163", "type": "", "value": "128" } @@ -14509,16 +14509,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31700:3:13" + "src": "31700:3:163" }, "nodeType": "YulFunctionCall", - "src": "31700:19:13" + "src": "31700:19:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "31692:4:13" + "src": "31692:4:163" } ] }, @@ -14528,19 +14528,19 @@ { "name": "value0", "nodeType": "YulIdentifier", - "src": "31773:6:13" + "src": "31773:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31786:9:13" + "src": "31786:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31797:1:13", + "src": "31797:1:163", "type": "", "value": "0" } @@ -14548,22 +14548,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31782:3:13" + "src": "31782:3:163" }, "nodeType": "YulFunctionCall", - "src": "31782:17:13" + "src": "31782:17:163" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "31729:43:13" + "src": "31729:43:163" }, "nodeType": "YulFunctionCall", - "src": "31729:71:13" + "src": "31729:71:163" }, "nodeType": "YulExpressionStatement", - "src": "31729:71:13" + "src": "31729:71:163" }, { "expression": { @@ -14571,19 +14571,19 @@ { "name": "value1", "nodeType": "YulIdentifier", - "src": "31854:6:13" + "src": "31854:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31867:9:13" + "src": "31867:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31878:2:13", + "src": "31878:2:163", "type": "", "value": "32" } @@ -14591,22 +14591,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31863:3:13" + "src": "31863:3:163" }, "nodeType": "YulFunctionCall", - "src": "31863:18:13" + "src": "31863:18:163" } ], "functionName": { "name": "abi_encode_t_address_to_t_address_fromStack", "nodeType": "YulIdentifier", - "src": "31810:43:13" + "src": "31810:43:163" }, "nodeType": "YulFunctionCall", - "src": "31810:72:13" + "src": "31810:72:163" }, "nodeType": "YulExpressionStatement", - "src": "31810:72:13" + "src": "31810:72:163" }, { "expression": { @@ -14614,19 +14614,19 @@ { "name": "value2", "nodeType": "YulIdentifier", - "src": "31936:6:13" + "src": "31936:6:163" }, { "arguments": [ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31949:9:13" + "src": "31949:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31960:2:13", + "src": "31960:2:163", "type": "", "value": "64" } @@ -14634,22 +14634,22 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31945:3:13" + "src": "31945:3:163" }, "nodeType": "YulFunctionCall", - "src": "31945:18:13" + "src": "31945:18:163" } ], "functionName": { "name": "abi_encode_t_uint256_to_t_uint256_fromStack", "nodeType": "YulIdentifier", - "src": "31892:43:13" + "src": "31892:43:163" }, "nodeType": "YulFunctionCall", - "src": "31892:72:13" + "src": "31892:72:163" }, "nodeType": "YulExpressionStatement", - "src": "31892:72:13" + "src": "31892:72:163" }, { "expression": { @@ -14659,12 +14659,12 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "31985:9:13" + "src": "31985:9:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "31996:2:13", + "src": "31996:2:163", "type": "", "value": "96" } @@ -14672,73 +14672,73 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "31981:3:13" + "src": "31981:3:163" }, "nodeType": "YulFunctionCall", - "src": "31981:18:13" + "src": "31981:18:163" }, { "arguments": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32005:4:13" + "src": "32005:4:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32011:9:13" + "src": "32011:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "32001:3:13" + "src": "32001:3:163" }, "nodeType": "YulFunctionCall", - "src": "32001:20:13" + "src": "32001:20:163" } ], "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "31974:6:13" + "src": "31974:6:163" }, "nodeType": "YulFunctionCall", - "src": "31974:48:13" + "src": "31974:48:163" }, "nodeType": "YulExpressionStatement", - "src": "31974:48:13" + "src": "31974:48:163" }, { "nodeType": "YulAssignment", - "src": "32031:84:13", + "src": "32031:84:163", "value": { "arguments": [ { "name": "value3", "nodeType": "YulIdentifier", - "src": "32101:6:13" + "src": "32101:6:163" }, { "name": "tail", "nodeType": "YulIdentifier", - "src": "32110:4:13" + "src": "32110:4:163" } ], "functionName": { "name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack", "nodeType": "YulIdentifier", - "src": "32039:61:13" + "src": "32039:61:163" }, "nodeType": "YulFunctionCall", - "src": "32039:76:13" + "src": "32039:76:163" }, "variableNames": [ { "name": "tail", "nodeType": "YulIdentifier", - "src": "32031:4:13" + "src": "32031:4:163" } ] } @@ -14750,31 +14750,31 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "31630:9:13", + "src": "31630:9:163", "type": "" }, { "name": "value3", "nodeType": "YulTypedName", - "src": "31642:6:13", + "src": "31642:6:163", "type": "" }, { "name": "value2", "nodeType": "YulTypedName", - "src": "31650:6:13", + "src": "31650:6:163", "type": "" }, { "name": "value1", "nodeType": "YulTypedName", - "src": "31658:6:13", + "src": "31658:6:163", "type": "" }, { "name": "value0", "nodeType": "YulTypedName", - "src": "31666:6:13", + "src": "31666:6:163", "type": "" } ], @@ -14782,41 +14782,41 @@ { "name": "tail", "nodeType": "YulTypedName", - "src": "31677:4:13", + "src": "31677:4:163", "type": "" } ], - "src": "31482:640:13" + "src": "31482:640:163" }, { "body": { "nodeType": "YulBlock", - "src": "32190:79:13", + "src": "32190:79:163", "statements": [ { "nodeType": "YulAssignment", - "src": "32200:22:13", + "src": "32200:22:163", "value": { "arguments": [ { "name": "offset", "nodeType": "YulIdentifier", - "src": "32215:6:13" + "src": "32215:6:163" } ], "functionName": { "name": "mload", "nodeType": "YulIdentifier", - "src": "32209:5:13" + "src": "32209:5:163" }, "nodeType": "YulFunctionCall", - "src": "32209:13:13" + "src": "32209:13:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "32200:5:13" + "src": "32200:5:163" } ] }, @@ -14826,19 +14826,19 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "32257:5:13" + "src": "32257:5:163" } ], "functionName": { "name": "validator_revert_t_bytes4", "nodeType": "YulIdentifier", - "src": "32231:25:13" + "src": "32231:25:163" }, "nodeType": "YulFunctionCall", - "src": "32231:32:13" + "src": "32231:32:163" }, "nodeType": "YulExpressionStatement", - "src": "32231:32:13" + "src": "32231:32:163" } ] }, @@ -14848,13 +14848,13 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "32168:6:13", + "src": "32168:6:163", "type": "" }, { "name": "end", "nodeType": "YulTypedName", - "src": "32176:3:13", + "src": "32176:3:163", "type": "" } ], @@ -14862,21 +14862,21 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "32184:5:13", + "src": "32184:5:163", "type": "" } ], - "src": "32128:141:13" + "src": "32128:141:163" }, { "body": { "nodeType": "YulBlock", - "src": "32351:273:13", + "src": "32351:273:163", "statements": [ { "body": { "nodeType": "YulBlock", - "src": "32397:83:13", + "src": "32397:83:163", "statements": [ { "expression": { @@ -14884,13 +14884,13 @@ "functionName": { "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", "nodeType": "YulIdentifier", - "src": "32399:77:13" + "src": "32399:77:163" }, "nodeType": "YulFunctionCall", - "src": "32399:79:13" + "src": "32399:79:163" }, "nodeType": "YulExpressionStatement", - "src": "32399:79:13" + "src": "32399:79:163" } ] }, @@ -14901,26 +14901,26 @@ { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "32372:7:13" + "src": "32372:7:163" }, { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32381:9:13" + "src": "32381:9:163" } ], "functionName": { "name": "sub", "nodeType": "YulIdentifier", - "src": "32368:3:13" + "src": "32368:3:163" }, "nodeType": "YulFunctionCall", - "src": "32368:23:13" + "src": "32368:23:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32393:2:13", + "src": "32393:2:163", "type": "", "value": "32" } @@ -14928,25 +14928,25 @@ "functionName": { "name": "slt", "nodeType": "YulIdentifier", - "src": "32364:3:13" + "src": "32364:3:163" }, "nodeType": "YulFunctionCall", - "src": "32364:32:13" + "src": "32364:32:163" }, "nodeType": "YulIf", - "src": "32361:119:13" + "src": "32361:119:163" }, { "nodeType": "YulBlock", - "src": "32490:127:13", + "src": "32490:127:163", "statements": [ { "nodeType": "YulVariableDeclaration", - "src": "32505:15:13", + "src": "32505:15:163", "value": { "kind": "number", "nodeType": "YulLiteral", - "src": "32519:1:13", + "src": "32519:1:163", "type": "", "value": "0" }, @@ -14954,14 +14954,14 @@ { "name": "offset", "nodeType": "YulTypedName", - "src": "32509:6:13", + "src": "32509:6:163", "type": "" } ] }, { "nodeType": "YulAssignment", - "src": "32534:73:13", + "src": "32534:73:163", "value": { "arguments": [ { @@ -14969,41 +14969,41 @@ { "name": "headStart", "nodeType": "YulIdentifier", - "src": "32579:9:13" + "src": "32579:9:163" }, { "name": "offset", "nodeType": "YulIdentifier", - "src": "32590:6:13" + "src": "32590:6:163" } ], "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32575:3:13" + "src": "32575:3:163" }, "nodeType": "YulFunctionCall", - "src": "32575:22:13" + "src": "32575:22:163" }, { "name": "dataEnd", "nodeType": "YulIdentifier", - "src": "32599:7:13" + "src": "32599:7:163" } ], "functionName": { "name": "abi_decode_t_bytes4_fromMemory", "nodeType": "YulIdentifier", - "src": "32544:30:13" + "src": "32544:30:163" }, "nodeType": "YulFunctionCall", - "src": "32544:63:13" + "src": "32544:63:163" }, "variableNames": [ { "name": "value0", "nodeType": "YulIdentifier", - "src": "32534:6:13" + "src": "32534:6:163" } ] } @@ -15017,13 +15017,13 @@ { "name": "headStart", "nodeType": "YulTypedName", - "src": "32321:9:13", + "src": "32321:9:163", "type": "" }, { "name": "dataEnd", "nodeType": "YulTypedName", - "src": "32332:7:13", + "src": "32332:7:163", "type": "" } ], @@ -15031,48 +15031,48 @@ { "name": "value0", "nodeType": "YulTypedName", - "src": "32344:6:13", + "src": "32344:6:163", "type": "" } ], - "src": "32275:349:13" + "src": "32275:349:163" }, { "body": { "nodeType": "YulBlock", - "src": "32673:190:13", + "src": "32673:190:163", "statements": [ { "nodeType": "YulAssignment", - "src": "32683:33:13", + "src": "32683:33:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "32710:5:13" + "src": "32710:5:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "32692:17:13" + "src": "32692:17:163" }, "nodeType": "YulFunctionCall", - "src": "32692:24:13" + "src": "32692:24:163" }, "variableNames": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "32683:5:13" + "src": "32683:5:163" } ] }, { "body": { "nodeType": "YulBlock", - "src": "32806:22:13", + "src": "32806:22:163", "statements": [ { "expression": { @@ -15080,13 +15080,13 @@ "functionName": { "name": "panic_error_0x11", "nodeType": "YulIdentifier", - "src": "32808:16:13" + "src": "32808:16:163" }, "nodeType": "YulFunctionCall", - "src": "32808:18:13" + "src": "32808:18:163" }, "nodeType": "YulExpressionStatement", - "src": "32808:18:13" + "src": "32808:18:163" } ] }, @@ -15095,12 +15095,12 @@ { "name": "value", "nodeType": "YulIdentifier", - "src": "32731:5:13" + "src": "32731:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32738:66:13", + "src": "32738:66:163", "type": "", "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" } @@ -15108,28 +15108,28 @@ "functionName": { "name": "eq", "nodeType": "YulIdentifier", - "src": "32728:2:13" + "src": "32728:2:163" }, "nodeType": "YulFunctionCall", - "src": "32728:77:13" + "src": "32728:77:163" }, "nodeType": "YulIf", - "src": "32725:103:13" + "src": "32725:103:163" }, { "nodeType": "YulAssignment", - "src": "32837:20:13", + "src": "32837:20:163", "value": { "arguments": [ { "name": "value", "nodeType": "YulIdentifier", - "src": "32848:5:13" + "src": "32848:5:163" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32855:1:13", + "src": "32855:1:163", "type": "", "value": "1" } @@ -15137,16 +15137,16 @@ "functionName": { "name": "add", "nodeType": "YulIdentifier", - "src": "32844:3:13" + "src": "32844:3:163" }, "nodeType": "YulFunctionCall", - "src": "32844:13:13" + "src": "32844:13:163" }, "variableNames": [ { "name": "ret", "nodeType": "YulIdentifier", - "src": "32837:3:13" + "src": "32837:3:163" } ] } @@ -15158,7 +15158,7 @@ { "name": "value", "nodeType": "YulTypedName", - "src": "32659:5:13", + "src": "32659:5:163", "type": "" } ], @@ -15166,16 +15166,16 @@ { "name": "ret", "nodeType": "YulTypedName", - "src": "32669:3:13", + "src": "32669:3:163", "type": "" } ], - "src": "32630:233:13" + "src": "32630:233:163" }, { "body": { "nodeType": "YulBlock", - "src": "32897:152:13", + "src": "32897:152:163", "statements": [ { "expression": { @@ -15183,14 +15183,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "32914:1:13", + "src": "32914:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "32917:77:13", + "src": "32917:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15198,13 +15198,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "32907:6:13" + "src": "32907:6:163" }, "nodeType": "YulFunctionCall", - "src": "32907:88:13" + "src": "32907:88:163" }, "nodeType": "YulExpressionStatement", - "src": "32907:88:13" + "src": "32907:88:163" }, { "expression": { @@ -15212,14 +15212,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "33011:1:13", + "src": "33011:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33014:4:13", + "src": "33014:4:163", "type": "", "value": "0x12" } @@ -15227,13 +15227,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33004:6:13" + "src": "33004:6:163" }, "nodeType": "YulFunctionCall", - "src": "33004:15:13" + "src": "33004:15:163" }, "nodeType": "YulExpressionStatement", - "src": "33004:15:13" + "src": "33004:15:163" }, { "expression": { @@ -15241,14 +15241,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "33035:1:13", + "src": "33035:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33038:4:13", + "src": "33038:4:163", "type": "", "value": "0x24" } @@ -15256,83 +15256,83 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "33028:6:13" + "src": "33028:6:163" }, "nodeType": "YulFunctionCall", - "src": "33028:15:13" + "src": "33028:15:163" }, "nodeType": "YulExpressionStatement", - "src": "33028:15:13" + "src": "33028:15:163" } ] }, "name": "panic_error_0x12", "nodeType": "YulFunctionDefinition", - "src": "32869:180:13" + "src": "32869:180:163" }, { "body": { "nodeType": "YulBlock", - "src": "33097:143:13", + "src": "33097:143:163", "statements": [ { "nodeType": "YulAssignment", - "src": "33107:25:13", + "src": "33107:25:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33130:1:13" + "src": "33130:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "33112:17:13" + "src": "33112:17:163" }, "nodeType": "YulFunctionCall", - "src": "33112:20:13" + "src": "33112:20:163" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33107:1:13" + "src": "33107:1:163" } ] }, { "nodeType": "YulAssignment", - "src": "33141:25:13", + "src": "33141:25:163", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "33164:1:13" + "src": "33164:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "33146:17:13" + "src": "33146:17:163" }, "nodeType": "YulFunctionCall", - "src": "33146:20:13" + "src": "33146:20:163" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "33141:1:13" + "src": "33141:1:163" } ] }, { "body": { "nodeType": "YulBlock", - "src": "33188:22:13", + "src": "33188:22:163", "statements": [ { "expression": { @@ -15340,13 +15340,13 @@ "functionName": { "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "33190:16:13" + "src": "33190:16:163" }, "nodeType": "YulFunctionCall", - "src": "33190:18:13" + "src": "33190:18:163" }, "nodeType": "YulExpressionStatement", - "src": "33190:18:13" + "src": "33190:18:163" } ] }, @@ -15355,49 +15355,49 @@ { "name": "y", "nodeType": "YulIdentifier", - "src": "33185:1:13" + "src": "33185:1:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "33178:6:13" + "src": "33178:6:163" }, "nodeType": "YulFunctionCall", - "src": "33178:9:13" + "src": "33178:9:163" }, "nodeType": "YulIf", - "src": "33175:35:13" + "src": "33175:35:163" }, { "nodeType": "YulAssignment", - "src": "33220:14:13", + "src": "33220:14:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33229:1:13" + "src": "33229:1:163" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "33232:1:13" + "src": "33232:1:163" } ], "functionName": { "name": "div", "nodeType": "YulIdentifier", - "src": "33225:3:13" + "src": "33225:3:163" }, "nodeType": "YulFunctionCall", - "src": "33225:9:13" + "src": "33225:9:163" }, "variableNames": [ { "name": "r", "nodeType": "YulIdentifier", - "src": "33220:1:13" + "src": "33220:1:163" } ] } @@ -15409,13 +15409,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "33086:1:13", + "src": "33086:1:163", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "33089:1:13", + "src": "33089:1:163", "type": "" } ], @@ -15423,75 +15423,75 @@ { "name": "r", "nodeType": "YulTypedName", - "src": "33095:1:13", + "src": "33095:1:163", "type": "" } ], - "src": "33055:185:13" + "src": "33055:185:163" }, { "body": { "nodeType": "YulBlock", - "src": "33280:142:13", + "src": "33280:142:163", "statements": [ { "nodeType": "YulAssignment", - "src": "33290:25:13", + "src": "33290:25:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33313:1:13" + "src": "33313:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "33295:17:13" + "src": "33295:17:163" }, "nodeType": "YulFunctionCall", - "src": "33295:20:13" + "src": "33295:20:163" }, "variableNames": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33290:1:13" + "src": "33290:1:163" } ] }, { "nodeType": "YulAssignment", - "src": "33324:25:13", + "src": "33324:25:163", "value": { "arguments": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "33347:1:13" + "src": "33347:1:163" } ], "functionName": { "name": "cleanup_t_uint256", "nodeType": "YulIdentifier", - "src": "33329:17:13" + "src": "33329:17:163" }, "nodeType": "YulFunctionCall", - "src": "33329:20:13" + "src": "33329:20:163" }, "variableNames": [ { "name": "y", "nodeType": "YulIdentifier", - "src": "33324:1:13" + "src": "33324:1:163" } ] }, { "body": { "nodeType": "YulBlock", - "src": "33371:22:13", + "src": "33371:22:163", "statements": [ { "expression": { @@ -15499,13 +15499,13 @@ "functionName": { "name": "panic_error_0x12", "nodeType": "YulIdentifier", - "src": "33373:16:13" + "src": "33373:16:163" }, "nodeType": "YulFunctionCall", - "src": "33373:18:13" + "src": "33373:18:163" }, "nodeType": "YulExpressionStatement", - "src": "33373:18:13" + "src": "33373:18:163" } ] }, @@ -15514,49 +15514,49 @@ { "name": "y", "nodeType": "YulIdentifier", - "src": "33368:1:13" + "src": "33368:1:163" } ], "functionName": { "name": "iszero", "nodeType": "YulIdentifier", - "src": "33361:6:13" + "src": "33361:6:163" }, "nodeType": "YulFunctionCall", - "src": "33361:9:13" + "src": "33361:9:163" }, "nodeType": "YulIf", - "src": "33358:35:13" + "src": "33358:35:163" }, { "nodeType": "YulAssignment", - "src": "33402:14:13", + "src": "33402:14:163", "value": { "arguments": [ { "name": "x", "nodeType": "YulIdentifier", - "src": "33411:1:13" + "src": "33411:1:163" }, { "name": "y", "nodeType": "YulIdentifier", - "src": "33414:1:13" + "src": "33414:1:163" } ], "functionName": { "name": "mod", "nodeType": "YulIdentifier", - "src": "33407:3:13" + "src": "33407:3:163" }, "nodeType": "YulFunctionCall", - "src": "33407:9:13" + "src": "33407:9:163" }, "variableNames": [ { "name": "r", "nodeType": "YulIdentifier", - "src": "33402:1:13" + "src": "33402:1:163" } ] } @@ -15568,13 +15568,13 @@ { "name": "x", "nodeType": "YulTypedName", - "src": "33269:1:13", + "src": "33269:1:163", "type": "" }, { "name": "y", "nodeType": "YulTypedName", - "src": "33272:1:13", + "src": "33272:1:163", "type": "" } ], @@ -15582,16 +15582,16 @@ { "name": "r", "nodeType": "YulTypedName", - "src": "33278:1:13", + "src": "33278:1:163", "type": "" } ], - "src": "33246:176:13" + "src": "33246:176:163" }, { "body": { "nodeType": "YulBlock", - "src": "33456:152:13", + "src": "33456:152:163", "statements": [ { "expression": { @@ -15599,14 +15599,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "33473:1:13", + "src": "33473:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33476:77:13", + "src": "33476:77:163", "type": "", "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" } @@ -15614,13 +15614,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33466:6:13" + "src": "33466:6:163" }, "nodeType": "YulFunctionCall", - "src": "33466:88:13" + "src": "33466:88:163" }, "nodeType": "YulExpressionStatement", - "src": "33466:88:13" + "src": "33466:88:163" }, { "expression": { @@ -15628,14 +15628,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "33570:1:13", + "src": "33570:1:163", "type": "", "value": "4" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33573:4:13", + "src": "33573:4:163", "type": "", "value": "0x32" } @@ -15643,13 +15643,13 @@ "functionName": { "name": "mstore", "nodeType": "YulIdentifier", - "src": "33563:6:13" + "src": "33563:6:163" }, "nodeType": "YulFunctionCall", - "src": "33563:15:13" + "src": "33563:15:163" }, "nodeType": "YulExpressionStatement", - "src": "33563:15:13" + "src": "33563:15:163" }, { "expression": { @@ -15657,14 +15657,14 @@ { "kind": "number", "nodeType": "YulLiteral", - "src": "33594:1:13", + "src": "33594:1:163", "type": "", "value": "0" }, { "kind": "number", "nodeType": "YulLiteral", - "src": "33597:4:13", + "src": "33597:4:163", "type": "", "value": "0x24" } @@ -15672,32 +15672,32 @@ "functionName": { "name": "revert", "nodeType": "YulIdentifier", - "src": "33587:6:13" + "src": "33587:6:163" }, "nodeType": "YulFunctionCall", - "src": "33587:15:13" + "src": "33587:15:163" }, "nodeType": "YulExpressionStatement", - "src": "33587:15:13" + "src": "33587:15:163" } ] }, "name": "panic_error_0x32", "nodeType": "YulFunctionDefinition", - "src": "33428:180:13" + "src": "33428:180:163" } ] }, "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_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 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_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function validator_revert_t_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 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(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptr(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(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_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approved query for nonex\")\n\n mstore(add(memPtr, 32), \"istent token\")\n\n }\n\n function abi_encode_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d__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_9291e0f44949204f2e9b40e6be090924979d6047b2365868f4e9f027722eb89d_to_t_string_memory_ptr_fromStack( tail)\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_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: approve caller is not ow\")\n\n mstore(add(memPtr, 32), \"ner nor approved for all\")\n\n }\n\n function abi_encode_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 56)\n store_literal_in_memory_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d__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_6d83cef3e0cb19b8320a9c5feb26b56bbb08f152a8e61b12eca3302d8d68b23d_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: transfer caller is not o\")\n\n mstore(add(memPtr, 32), \"wner nor approved\")\n\n }\n\n function abi_encode_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 49)\n store_literal_in_memory_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2__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_c8682f3ad98807db59a6ec6bb812b72fed0a66e3150fa8239699ee83885247f2_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: owner query for nonexist\")\n\n mstore(add(memPtr, 32), \"ent token\")\n\n }\n\n function abi_encode_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n store_literal_in_memory_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397__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_7481f3df2a424c0755a1ad2356614e9a5a358d461ea2eae1f89cb21cbad00397_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: balance query for the ze\")\n\n mstore(add(memPtr, 32), \"ro address\")\n\n }\n\n function abi_encode_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n store_literal_in_memory_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba__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_7395d4d3901c50cdfcab223d072f9aa36241df5d883e62cbf147ee1b05a9e6ba_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721URIStorage: URI query for \")\n\n mstore(add(memPtr, 32), \"nonexistent token\")\n\n }\n\n function abi_encode_t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 49)\n store_literal_in_memory_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a__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_8e9ed1638ba7e2d59e03d0957c9339381732ac84d73f65c86c45db1467eafa2a_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 abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, length)\n }\n\n function abi_encode_tuple_packed_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\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_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1, pos)\n\n end := pos\n }\n\n function store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721: operator query for nonex\")\n\n mstore(add(memPtr, 32), \"istent token\")\n\n }\n\n function abi_encode_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n store_literal_in_memory_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c__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_5797d1ccb08b83980dd0c07ea40d8f6a64d35fff736a19bdd17522954cb0899c_to_t_string_memory_ptr_fromStack( tail)\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 panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function 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_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_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721Metadata: URI query for no\")\n\n mstore(add(memPtr, 32), \"nexistent token\")\n\n }\n\n function abi_encode_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n store_literal_in_memory_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb__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_a2d45c0fba603d40d82d590051761ca952d1ab9d78cca6d0d464d7b6e961a9cb_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 store_literal_in_memory_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4(memPtr) {\n\n mstore(add(memPtr, 0), \"ERC721URIStorage: URI set of non\")\n\n mstore(add(memPtr, 32), \"existent token\")\n\n }\n\n function abi_encode_t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 46)\n store_literal_in_memory_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4__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_7521de1f20ce4d7bb86b61090bad73a87315a1f4baff36cc352901c7777280c4_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function array_length_t_bytes_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function 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 increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function checked_div_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n\n r := div(x, y)\n }\n\n function mod_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n r := mod(x, y)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n}\n", - "id": 13, + "id": 163, "language": "Yul", "name": "#utility.yul" } ], - "sourceMap": "261:491:11:-:0;;;395:49;;;;;;;;;;1390:113:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1464:5;1456;:13;;;;;;;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;;;;;;;:::i;:::-;;1390:113;;261:491:11;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:180:13:-;55:77;52:1;45:88;152:4;149:1;142:15;176:4;173:1;166:15;193:320;237:6;274:1;268:4;264:12;254:22;;321:1;315:4;311:12;342:18;332:81;;398:4;390:6;386:17;376:27;;332:81;460:2;452:6;449:14;429:18;426:38;423:84;;479:18;;:::i;:::-;423:84;244:269;193:320;;;:::o;261:491:11:-;;;;;;;", - "deployedSourceMap": "261:491:11:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570:300:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2488:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4000:217;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3538:401;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4727:330;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5123:179;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2191:235;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:205;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2650:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4284:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5368:320;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;467:663:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4503:162:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;450:300:11;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1570::0;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;2488:98::-;2542:13;2574:5;2567:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2488:98;:::o;4000:217::-;4076:7;4103:16;4111:7;4103;:16::i;:::-;4095:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4186:15;:24;4202:7;4186:24;;;;;;;;;;;;;;;;;;;;;4179:31;;4000:217;;;:::o;3538:401::-;3618:13;3634:23;3649:7;3634:14;:23::i;:::-;3618:39;;3681:5;3675:11;;:2;:11;;;3667:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3772:5;3756:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3781:37;3798:5;3805:12;:10;:12::i;:::-;3781:16;:37::i;:::-;3756:62;3735:165;;;;;;;;;;;;:::i;:::-;;;;;;;;;3911:21;3920:2;3924:7;3911:8;:21::i;:::-;3608:331;3538:401;;:::o;4727:330::-;4916:41;4935:12;:10;:12::i;:::-;4949:7;4916:18;:41::i;:::-;4908:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5022:28;5032:4;5038:2;5042:7;5022:9;:28::i;:::-;4727:330;;;:::o;5123:179::-;5256:39;5273:4;5279:2;5283:7;5256:39;;;;;;;;;;;;:16;:39::i;:::-;5123:179;;;:::o;2191:235::-;2263:7;2282:13;2298:7;:16;2306:7;2298:16;;;;;;;;;;;;;;;;;;;;;2282:32;;2349:1;2332:19;;:5;:19;;;2324:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2414:5;2407:12;;;2191:235;;;:::o;1929:205::-;2001:7;2045:1;2028:19;;:5;:19;;;2020:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;2111:9;:16;2121:5;2111:16;;;;;;;;;;;;;;;;2104:23;;1929:205;;;:::o;2650:102::-;2706:13;2738:7;2731:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2650:102;:::o;4284:153::-;4378:52;4397:12;:10;:12::i;:::-;4411:8;4421;4378:18;:52::i;:::-;4284:153;;:::o;5368:320::-;5537:41;5556:12;:10;:12::i;:::-;5570:7;5537:18;:41::i;:::-;5529:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5642:39;5656:4;5662:2;5666:7;5675:5;5642:13;:39::i;:::-;5368:320;;;;:::o;467:663:3:-;540:13;573:16;581:7;573;:16::i;:::-;565:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;654:23;680:10;:19;691:7;680:19;;;;;;;;;;;654:45;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;709:18;730:10;:8;:10::i;:::-;709:31;;835:1;819:4;813:18;:23;809:70;;859:9;852:16;;;;;;809:70;1007:1;987:9;981:23;:27;977:106;;;1055:4;1061:9;1038:33;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1024:48;;;;;;977:106;1100:23;1115:7;1100:14;:23::i;:::-;1093:30;;;;467:663;;;;:::o;4503:162:0:-;4600:4;4623:18;:25;4642:5;4623:25;;;;;;;;;;;;;;;:35;4649:8;4623:35;;;;;;;;;;;;;;;;;;;;;;;;;4616:42;;4503:162;;;;:::o;450:300:11:-;542:7;565:21;:9;:19;:21::i;:::-;597:17;617:19;:9;:17;:19::i;:::-;597:39;;646:27;652:9;663;646:5;:27::i;:::-;683:33;696:9;707:8;683:12;:33::i;:::-;734:9;727:16;;;450:300;;;;:::o;829:155:9:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;7160:125:0:-;7225:4;7276:1;7248:30;;:7;:16;7256:7;7248:16;;;;;;;;;;;;;;;;;;;;;:30;;;;7241:37;;7160:125;;;:::o;640:96:6:-;693:7;719:10;712:17;;640:96;:::o;11169:171:0:-;11270:2;11243:15;:24;11259:7;11243:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;11325:7;11321:2;11287:46;;11296:23;11311:7;11296:14;:23::i;:::-;11287:46;;;;;;;;;;;;11169:171;;:::o;7443:344::-;7536:4;7560:16;7568:7;7560;:16::i;:::-;7552:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7635:13;7651:23;7666:7;7651:14;:23::i;:::-;7635:39;;7703:5;7692:16;;:7;:16;;;:52;;;;7712:32;7729:5;7736:7;7712:16;:32::i;:::-;7692:52;:87;;;;7772:7;7748:31;;:20;7760:7;7748:11;:20::i;:::-;:31;;;7692:87;7684:96;;;7443:344;;;;:::o;10453:605::-;10607:4;10580:31;;:23;10595:7;10580:14;:23::i;:::-;:31;;;10572:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;10685:1;10671:16;;:2;:16;;;10663:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;10739:39;10760:4;10766:2;10770:7;10739:20;:39::i;:::-;10840:29;10857:1;10861:7;10840:8;:29::i;:::-;10899:1;10880:9;:15;10890:4;10880:15;;;;;;;;;;;;;;;;:20;;;;;;;:::i;:::-;;;;;;;;10927:1;10910:9;:13;10920:2;10910:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;10957:2;10938:7;:16;10946:7;10938:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;10994:7;10990:2;10975:27;;10984:4;10975:27;;;;;;;;;;;;11013:38;11033:4;11039:2;11043:7;11013:19;:38::i;:::-;10453:605;;;:::o;11475:307::-;11625:8;11616:17;;:5;:17;;;11608:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;11711:8;11673:18;:25;11692:5;11673:25;;;;;;;;;;;;;;;:35;11699:8;11673:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;11756:8;11734:41;;11749:5;11734:41;;;11766:8;11734:41;;;;;;:::i;:::-;;;;;;;;11475:307;;;:::o;6550:::-;6701:28;6711:4;6717:2;6721:7;6701:9;:28::i;:::-;6747:48;6770:4;6776:2;6780:7;6789:5;6747:22;:48::i;:::-;6739:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;6550:307;;;;:::o;3389:92::-;3440:13;3465:9;;;;;;;;;;;;;;3389:92;:::o;2818:329::-;2891:13;2924:16;2932:7;2924;:16::i;:::-;2916:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;3003:21;3027:10;:8;:10::i;:::-;3003:34;;3078:1;3060:7;3054:21;:25;:86;;;;;;;;;;;;;;;;;3106:7;3115:18;:7;:16;:18::i;:::-;3089:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3054:86;3047:93;;;2818:329;;;:::o;945:123:7:-;1050:1;1032:7;:14;;;:19;;;;;;;;;;;945:123;:::o;827:112::-;892:7;918;:14;;;911:21;;827:112;;;:::o;9079:427:0:-;9172:1;9158:16;;:2;:16;;;9150:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9230:16;9238:7;9230;:16::i;:::-;9229:17;9221:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9290:45;9319:1;9323:2;9327:7;9290:20;:45::i;:::-;9363:1;9346:9;:13;9356:2;9346:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;9393:2;9374:7;:16;9382:7;9374:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9436:7;9432:2;9411:33;;9428:1;9411:33;;;;;;;;;;;;9455:44;9483:1;9487:2;9491:7;9455:19;:44::i;:::-;9079:427;;:::o;1277:214:3:-;1376:16;1384:7;1376;:16::i;:::-;1368:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;1475:9;1453:10;:19;1464:7;1453:19;;;;;;;;;;;:31;;;;;;;;;;;;:::i;:::-;;1277:214;;:::o;13669:122:0:-;;;;:::o;14163:121::-;;;;:::o;12335:778::-;12485:4;12505:15;:2;:13;;;:15::i;:::-;12501:606;;;12556:2;12540:36;;;12577:12;:10;:12::i;:::-;12591:4;12597:7;12606:5;12540:72;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;12536:519;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12796:1;12779:6;:13;:18;12775:266;;12821:60;;;;;;;;;;:::i;:::-;;;;;;;;12775:266;12993:6;12987:13;12978:6;12974:2;12970:15;12963:38;12536:519;12672:41;;;12662:51;;;:6;:51;;;;12655:58;;;;;12501:606;13092:4;13085:11;;12335:778;;;;;;;:::o;328:703:8:-;384:13;610:1;601:5;:10;597:51;;627:10;;;;;;;;;;;;;;;;;;;;;597:51;657:12;672:5;657:20;;687:14;711:75;726:1;718:4;:9;711:75;;743:8;;;;;:::i;:::-;;;;773:2;765:10;;;;;:::i;:::-;;;711:75;;;795:19;827:6;817:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;795:39;;844:150;860:1;851:5;:10;844:150;;887:1;877:11;;;;;:::i;:::-;;;953:2;945:5;:10;;;;:::i;:::-;932:2;:24;;;;:::i;:::-;919:39;;902:6;909;902:14;;;;;;;;:::i;:::-;;;;;:56;;;;;;;;;;;981:2;972:11;;;;;:::i;:::-;;;844:150;;;1017:6;1003:21;;;;;328:703;;;;:::o;1175:320:5:-;1235:4;1487:1;1465:7;:19;;;:23;1458:30;;1175:320;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:13:-;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:619::-;5015:6;5023;5031;5080:2;5068:9;5059:7;5055:23;5051:32;5048:119;;;5086:79;;:::i;:::-;5048:119;5206:1;5231:53;5276:7;5267:6;5256:9;5252:22;5231:53;:::i;:::-;5221:63;;5177:117;5333:2;5359:53;5404:7;5395:6;5384:9;5380:22;5359:53;:::i;:::-;5349:63;;5304:118;5461:2;5487:53;5532:7;5523:6;5512:9;5508:22;5487:53;:::i;:::-;5477:63;;5432:118;4938:619;;;;;:::o;5563:329::-;5622:6;5671:2;5659:9;5650:7;5646:23;5642:32;5639:119;;;5677:79;;:::i;:::-;5639:119;5797:1;5822:53;5867:7;5858:6;5847:9;5843:22;5822:53;:::i;:::-;5812:63;;5768:117;5563:329;;;;:::o;5898:118::-;5985:24;6003:5;5985:24;:::i;:::-;5980:3;5973:37;5898:118;;:::o;6022:222::-;6115:4;6153:2;6142:9;6138:18;6130:26;;6166:71;6234:1;6223:9;6219:17;6210:6;6166:71;:::i;:::-;6022:222;;;;:::o;6250:116::-;6320:21;6335:5;6320:21;:::i;:::-;6313:5;6310:32;6300:60;;6356:1;6353;6346:12;6300:60;6250:116;:::o;6372:133::-;6415:5;6453:6;6440:20;6431:29;;6469:30;6493:5;6469:30;:::i;:::-;6372:133;;;;:::o;6511:468::-;6576:6;6584;6633:2;6621:9;6612:7;6608:23;6604:32;6601:119;;;6639:79;;:::i;:::-;6601:119;6759:1;6784:53;6829:7;6820:6;6809:9;6805:22;6784:53;:::i;:::-;6774:63;;6730:117;6886:2;6912:50;6954:7;6945:6;6934:9;6930:22;6912:50;:::i;:::-;6902:60;;6857:115;6511:468;;;;;:::o;6985:117::-;7094:1;7091;7084:12;7108:117;7217:1;7214;7207:12;7231:180;7279:77;7276:1;7269:88;7376:4;7373:1;7366:15;7400:4;7397:1;7390:15;7417:281;7500:27;7522:4;7500:27;:::i;:::-;7492:6;7488:40;7630:6;7618:10;7615:22;7594:18;7582:10;7579:34;7576:62;7573:88;;;7641:18;;:::i;:::-;7573:88;7681:10;7677:2;7670:22;7460:238;7417:281;;:::o;7704:129::-;7738:6;7765:20;;:::i;:::-;7755:30;;7794:33;7822:4;7814:6;7794:33;:::i;:::-;7704:129;;;:::o;7839:307::-;7900:4;7990:18;7982:6;7979:30;7976:56;;;8012:18;;:::i;:::-;7976:56;8050:29;8072:6;8050:29;:::i;:::-;8042:37;;8134:4;8128;8124:15;8116:23;;7839:307;;;:::o;8152:154::-;8236:6;8231:3;8226;8213:30;8298:1;8289:6;8284:3;8280:16;8273:27;8152:154;;;:::o;8312:410::-;8389:5;8414:65;8430:48;8471:6;8430:48;:::i;:::-;8414:65;:::i;:::-;8405:74;;8502:6;8495:5;8488:21;8540:4;8533:5;8529:16;8578:3;8569:6;8564:3;8560:16;8557:25;8554:112;;;8585:79;;:::i;:::-;8554:112;8675:41;8709:6;8704:3;8699;8675:41;:::i;:::-;8395:327;8312:410;;;;;:::o;8741:338::-;8796:5;8845:3;8838:4;8830:6;8826:17;8822:27;8812:122;;8853:79;;:::i;:::-;8812:122;8970:6;8957:20;8995:78;9069:3;9061:6;9054:4;9046:6;9042:17;8995:78;:::i;:::-;8986:87;;8802:277;8741:338;;;;:::o;9085:943::-;9180:6;9188;9196;9204;9253:3;9241:9;9232:7;9228:23;9224:33;9221:120;;;9260:79;;:::i;:::-;9221:120;9380:1;9405:53;9450:7;9441:6;9430:9;9426:22;9405:53;:::i;:::-;9395:63;;9351:117;9507:2;9533:53;9578:7;9569:6;9558:9;9554:22;9533:53;:::i;:::-;9523:63;;9478:118;9635:2;9661:53;9706:7;9697:6;9686:9;9682:22;9661:53;:::i;:::-;9651:63;;9606:118;9791:2;9780:9;9776:18;9763:32;9822:18;9814:6;9811:30;9808:117;;;9844:79;;:::i;:::-;9808:117;9949:62;10003:7;9994:6;9983:9;9979:22;9949:62;:::i;:::-;9939:72;;9734:287;9085:943;;;;;;;:::o;10034:474::-;10102:6;10110;10159:2;10147:9;10138:7;10134:23;10130:32;10127:119;;;10165:79;;:::i;:::-;10127:119;10285:1;10310:53;10355:7;10346:6;10335:9;10331:22;10310:53;:::i;:::-;10300:63;;10256:117;10412:2;10438:53;10483:7;10474:6;10463:9;10459:22;10438:53;:::i;:::-;10428:63;;10383:118;10034:474;;;;;:::o;10514:308::-;10576:4;10666:18;10658:6;10655:30;10652:56;;;10688:18;;:::i;:::-;10652:56;10726:29;10748:6;10726:29;:::i;:::-;10718:37;;10810:4;10804;10800:15;10792:23;;10514:308;;;:::o;10828:412::-;10906:5;10931:66;10947:49;10989:6;10947:49;:::i;:::-;10931:66;:::i;:::-;10922:75;;11020:6;11013:5;11006:21;11058:4;11051:5;11047:16;11096:3;11087:6;11082:3;11078:16;11075:25;11072:112;;;11103:79;;:::i;:::-;11072:112;11193:41;11227:6;11222:3;11217;11193:41;:::i;:::-;10912:328;10828:412;;;;;:::o;11260:340::-;11316:5;11365:3;11358:4;11350:6;11346:17;11342:27;11332:122;;11373:79;;:::i;:::-;11332:122;11490:6;11477:20;11515:79;11590:3;11582:6;11575:4;11567:6;11563:17;11515:79;:::i;:::-;11506:88;;11322:278;11260:340;;;;:::o;11606:654::-;11684:6;11692;11741:2;11729:9;11720:7;11716:23;11712:32;11709:119;;;11747:79;;:::i;:::-;11709:119;11867:1;11892:53;11937:7;11928:6;11917:9;11913:22;11892:53;:::i;:::-;11882:63;;11838:117;12022:2;12011:9;12007:18;11994:32;12053:18;12045:6;12042:30;12039:117;;;12075:79;;:::i;:::-;12039:117;12180:63;12235:7;12226:6;12215:9;12211:22;12180:63;:::i;:::-;12170:73;;11965:288;11606:654;;;;;:::o;12266:180::-;12314:77;12311:1;12304:88;12411:4;12408:1;12401:15;12435:4;12432:1;12425:15;12452:320;12496:6;12533:1;12527:4;12523:12;12513:22;;12580:1;12574:4;12570:12;12601:18;12591:81;;12657:4;12649:6;12645:17;12635:27;;12591:81;12719:2;12711:6;12708:14;12688:18;12685:38;12682:84;;12738:18;;:::i;:::-;12682:84;12503:269;12452:320;;;:::o;12778:231::-;12918:34;12914:1;12906:6;12902:14;12895:58;12987:14;12982:2;12974:6;12970:15;12963:39;12778:231;:::o;13015:366::-;13157:3;13178:67;13242:2;13237:3;13178:67;:::i;:::-;13171:74;;13254:93;13343:3;13254:93;:::i;:::-;13372:2;13367:3;13363:12;13356:19;;13015:366;;;:::o;13387:419::-;13553:4;13591:2;13580:9;13576:18;13568:26;;13640:9;13634:4;13630:20;13626:1;13615:9;13611:17;13604:47;13668:131;13794:4;13668:131;:::i;:::-;13660:139;;13387:419;;;:::o;13812:220::-;13952:34;13948:1;13940:6;13936:14;13929:58;14021:3;14016:2;14008:6;14004:15;13997:28;13812:220;:::o;14038:366::-;14180:3;14201:67;14265:2;14260:3;14201:67;:::i;:::-;14194:74;;14277:93;14366:3;14277:93;:::i;:::-;14395:2;14390:3;14386:12;14379:19;;14038:366;;;:::o;14410:419::-;14576:4;14614:2;14603:9;14599:18;14591:26;;14663:9;14657:4;14653:20;14649:1;14638:9;14634:17;14627:47;14691:131;14817:4;14691:131;:::i;:::-;14683:139;;14410:419;;;:::o;14835:243::-;14975:34;14971:1;14963:6;14959:14;14952:58;15044:26;15039:2;15031:6;15027:15;15020:51;14835:243;:::o;15084:366::-;15226:3;15247:67;15311:2;15306:3;15247:67;:::i;:::-;15240:74;;15323:93;15412:3;15323:93;:::i;:::-;15441:2;15436:3;15432:12;15425:19;;15084:366;;;:::o;15456:419::-;15622:4;15660:2;15649:9;15645:18;15637:26;;15709:9;15703:4;15699:20;15695:1;15684:9;15680:17;15673:47;15737:131;15863:4;15737:131;:::i;:::-;15729:139;;15456:419;;;:::o;15881:236::-;16021:34;16017:1;16009:6;16005:14;15998:58;16090:19;16085:2;16077:6;16073:15;16066:44;15881:236;:::o;16123:366::-;16265:3;16286:67;16350:2;16345:3;16286:67;:::i;:::-;16279:74;;16362:93;16451:3;16362:93;:::i;:::-;16480:2;16475:3;16471:12;16464:19;;16123:366;;;:::o;16495:419::-;16661:4;16699:2;16688:9;16684:18;16676:26;;16748:9;16742:4;16738:20;16734:1;16723:9;16719:17;16712:47;16776:131;16902:4;16776:131;:::i;:::-;16768:139;;16495:419;;;:::o;16920:228::-;17060:34;17056:1;17048:6;17044:14;17037:58;17129:11;17124:2;17116:6;17112:15;17105:36;16920:228;:::o;17154:366::-;17296:3;17317:67;17381:2;17376:3;17317:67;:::i;:::-;17310:74;;17393:93;17482:3;17393:93;:::i;:::-;17511:2;17506:3;17502:12;17495:19;;17154:366;;;:::o;17526:419::-;17692:4;17730:2;17719:9;17715:18;17707:26;;17779:9;17773:4;17769:20;17765:1;17754:9;17750:17;17743:47;17807:131;17933:4;17807:131;:::i;:::-;17799:139;;17526:419;;;:::o;17951:229::-;18091:34;18087:1;18079:6;18075:14;18068:58;18160:12;18155:2;18147:6;18143:15;18136:37;17951:229;:::o;18186:366::-;18328:3;18349:67;18413:2;18408:3;18349:67;:::i;:::-;18342:74;;18425:93;18514:3;18425:93;:::i;:::-;18543:2;18538:3;18534:12;18527:19;;18186:366;;;:::o;18558:419::-;18724:4;18762:2;18751:9;18747:18;18739:26;;18811:9;18805:4;18801:20;18797:1;18786:9;18782:17;18775:47;18839:131;18965:4;18839:131;:::i;:::-;18831:139;;18558:419;;;:::o;18983:236::-;19123:34;19119:1;19111:6;19107:14;19100:58;19192:19;19187:2;19179:6;19175:15;19168:44;18983:236;:::o;19225:366::-;19367:3;19388:67;19452:2;19447:3;19388:67;:::i;:::-;19381:74;;19464:93;19553:3;19464:93;:::i;:::-;19582:2;19577:3;19573:12;19566:19;;19225:366;;;:::o;19597:419::-;19763:4;19801:2;19790:9;19786:18;19778:26;;19850:9;19844:4;19840:20;19836:1;19825:9;19821:17;19814:47;19878:131;20004:4;19878:131;:::i;:::-;19870:139;;19597:419;;;:::o;20022:148::-;20124:11;20161:3;20146:18;;20022:148;;;;:::o;20176:377::-;20282:3;20310:39;20343:5;20310:39;:::i;:::-;20365:89;20447:6;20442:3;20365:89;:::i;:::-;20358:96;;20463:52;20508:6;20503:3;20496:4;20489:5;20485:16;20463:52;:::i;:::-;20540:6;20535:3;20531:16;20524:23;;20286:267;20176:377;;;;:::o;20559:435::-;20739:3;20761:95;20852:3;20843:6;20761:95;:::i;:::-;20754:102;;20873:95;20964:3;20955:6;20873:95;:::i;:::-;20866:102;;20985:3;20978:10;;20559:435;;;;;:::o;21000:231::-;21140:34;21136:1;21128:6;21124:14;21117:58;21209:14;21204:2;21196:6;21192:15;21185:39;21000:231;:::o;21237:366::-;21379:3;21400:67;21464:2;21459:3;21400:67;:::i;:::-;21393:74;;21476:93;21565:3;21476:93;:::i;:::-;21594:2;21589:3;21585:12;21578:19;;21237:366;;;:::o;21609:419::-;21775:4;21813:2;21802:9;21798:18;21790:26;;21862:9;21856:4;21852:20;21848:1;21837:9;21833:17;21826:47;21890:131;22016:4;21890:131;:::i;:::-;21882:139;;21609:419;;;:::o;22034:224::-;22174:34;22170:1;22162:6;22158:14;22151:58;22243:7;22238:2;22230:6;22226:15;22219:32;22034:224;:::o;22264:366::-;22406:3;22427:67;22491:2;22486:3;22427:67;:::i;:::-;22420:74;;22503:93;22592:3;22503:93;:::i;:::-;22621:2;22616:3;22612:12;22605:19;;22264:366;;;:::o;22636:419::-;22802:4;22840:2;22829:9;22825:18;22817:26;;22889:9;22883:4;22879:20;22875:1;22864:9;22860:17;22853:47;22917:131;23043:4;22917:131;:::i;:::-;22909:139;;22636:419;;;:::o;23061:223::-;23201:34;23197:1;23189:6;23185:14;23178:58;23270:6;23265:2;23257:6;23253:15;23246:31;23061:223;:::o;23290:366::-;23432:3;23453:67;23517:2;23512:3;23453:67;:::i;:::-;23446:74;;23529:93;23618:3;23529:93;:::i;:::-;23647:2;23642:3;23638:12;23631:19;;23290:366;;;:::o;23662:419::-;23828:4;23866:2;23855:9;23851:18;23843:26;;23915:9;23909:4;23905:20;23901:1;23890:9;23886:17;23879:47;23943:131;24069:4;23943:131;:::i;:::-;23935:139;;23662:419;;;:::o;24087:180::-;24135:77;24132:1;24125:88;24232:4;24229:1;24222:15;24256:4;24253:1;24246:15;24273:191;24313:4;24333:20;24351:1;24333:20;:::i;:::-;24328:25;;24367:20;24385:1;24367:20;:::i;:::-;24362:25;;24406:1;24403;24400:8;24397:34;;;24411:18;;:::i;:::-;24397:34;24456:1;24453;24449:9;24441:17;;24273:191;;;;:::o;24470:305::-;24510:3;24529:20;24547:1;24529:20;:::i;:::-;24524:25;;24563:20;24581:1;24563:20;:::i;:::-;24558:25;;24717:1;24649:66;24645:74;24642:1;24639:81;24636:107;;;24723:18;;:::i;:::-;24636:107;24767:1;24764;24760:9;24753:16;;24470:305;;;;:::o;24781:175::-;24921:27;24917:1;24909:6;24905:14;24898:51;24781:175;:::o;24962:366::-;25104:3;25125:67;25189:2;25184:3;25125:67;:::i;:::-;25118:74;;25201:93;25290:3;25201:93;:::i;:::-;25319:2;25314:3;25310:12;25303:19;;24962:366;;;:::o;25334:419::-;25500:4;25538:2;25527:9;25523:18;25515:26;;25587:9;25581:4;25577:20;25573:1;25562:9;25558:17;25551:47;25615:131;25741:4;25615:131;:::i;:::-;25607:139;;25334:419;;;:::o;25759:237::-;25899:34;25895:1;25887:6;25883:14;25876:58;25968:20;25963:2;25955:6;25951:15;25944:45;25759:237;:::o;26002:366::-;26144:3;26165:67;26229:2;26224:3;26165:67;:::i;:::-;26158:74;;26241:93;26330:3;26241:93;:::i;:::-;26359:2;26354:3;26350:12;26343:19;;26002:366;;;:::o;26374:419::-;26540:4;26578:2;26567:9;26563:18;26555:26;;26627:9;26621:4;26617:20;26613:1;26602:9;26598:17;26591:47;26655:131;26781:4;26655:131;:::i;:::-;26647:139;;26374:419;;;:::o;26799:234::-;26939:34;26935:1;26927:6;26923:14;26916:58;27008:17;27003:2;26995:6;26991:15;26984:42;26799:234;:::o;27039:366::-;27181:3;27202:67;27266:2;27261:3;27202:67;:::i;:::-;27195:74;;27278:93;27367:3;27278:93;:::i;:::-;27396:2;27391:3;27387:12;27380:19;;27039:366;;;:::o;27411:419::-;27577:4;27615:2;27604:9;27600:18;27592:26;;27664:9;27658:4;27654:20;27650:1;27639:9;27635:17;27628:47;27692:131;27818:4;27692:131;:::i;:::-;27684:139;;27411:419;;;:::o;27836:182::-;27976:34;27972:1;27964:6;27960:14;27953:58;27836:182;:::o;28024:366::-;28166:3;28187:67;28251:2;28246:3;28187:67;:::i;:::-;28180:74;;28263:93;28352:3;28263:93;:::i;:::-;28381:2;28376:3;28372:12;28365:19;;28024:366;;;:::o;28396:419::-;28562:4;28600:2;28589:9;28585:18;28577:26;;28649:9;28643:4;28639:20;28635:1;28624:9;28620:17;28613:47;28677:131;28803:4;28677:131;:::i;:::-;28669:139;;28396:419;;;:::o;28821:178::-;28961:30;28957:1;28949:6;28945:14;28938:54;28821:178;:::o;29005:366::-;29147:3;29168:67;29232:2;29227:3;29168:67;:::i;:::-;29161:74;;29244:93;29333:3;29244:93;:::i;:::-;29362:2;29357:3;29353:12;29346:19;;29005:366;;;:::o;29377:419::-;29543:4;29581:2;29570:9;29566:18;29558:26;;29630:9;29624:4;29620:20;29616:1;29605:9;29601:17;29594:47;29658:131;29784:4;29658:131;:::i;:::-;29650:139;;29377:419;;;:::o;29802:233::-;29942:34;29938:1;29930:6;29926:14;29919:58;30011:16;30006:2;29998:6;29994:15;29987:41;29802:233;:::o;30041:366::-;30183:3;30204:67;30268:2;30263:3;30204:67;:::i;:::-;30197:74;;30280:93;30369:3;30280:93;:::i;:::-;30398:2;30393:3;30389:12;30382:19;;30041:366;;;:::o;30413:419::-;30579:4;30617:2;30606:9;30602:18;30594:26;;30666:9;30660:4;30656:20;30652:1;30641:9;30637:17;30630:47;30694:131;30820:4;30694:131;:::i;:::-;30686:139;;30413:419;;;:::o;30838:98::-;30889:6;30923:5;30917:12;30907:22;;30838:98;;;:::o;30942:168::-;31025:11;31059:6;31054:3;31047:19;31099:4;31094:3;31090:14;31075:29;;30942:168;;;;:::o;31116:360::-;31202:3;31230:38;31262:5;31230:38;:::i;:::-;31284:70;31347:6;31342:3;31284:70;:::i;:::-;31277:77;;31363:52;31408:6;31403:3;31396:4;31389:5;31385:16;31363:52;:::i;:::-;31440:29;31462:6;31440:29;:::i;:::-;31435:3;31431:39;31424:46;;31206:270;31116:360;;;;:::o;31482:640::-;31677:4;31715:3;31704:9;31700:19;31692:27;;31729:71;31797:1;31786:9;31782:17;31773:6;31729:71;:::i;:::-;31810:72;31878:2;31867:9;31863:18;31854:6;31810:72;:::i;:::-;31892;31960:2;31949:9;31945:18;31936:6;31892:72;:::i;:::-;32011:9;32005:4;32001:20;31996:2;31985:9;31981:18;31974:48;32039:76;32110:4;32101:6;32039:76;:::i;:::-;32031:84;;31482:640;;;;;;;:::o;32128:141::-;32184:5;32215:6;32209:13;32200:22;;32231:32;32257:5;32231:32;:::i;:::-;32128:141;;;;:::o;32275:349::-;32344:6;32393:2;32381:9;32372:7;32368:23;32364:32;32361:119;;;32399:79;;:::i;:::-;32361:119;32519:1;32544:63;32599:7;32590:6;32579:9;32575:22;32544:63;:::i;:::-;32534:73;;32490:127;32275:349;;;;:::o;32630:233::-;32669:3;32692:24;32710:5;32692:24;:::i;:::-;32683:33;;32738:66;32731:5;32728:77;32725:103;;32808:18;;:::i;:::-;32725:103;32855:1;32848:5;32844:13;32837:20;;32630:233;;;:::o;32869:180::-;32917:77;32914:1;32907:88;33014:4;33011:1;33004:15;33038:4;33035:1;33028:15;33055:185;33095:1;33112:20;33130:1;33112:20;:::i;:::-;33107:25;;33146:20;33164:1;33146:20;:::i;:::-;33141:25;;33185:1;33175:35;;33190:18;;:::i;:::-;33175:35;33232:1;33229;33225:9;33220:14;;33055:185;;;;:::o;33246:176::-;33278:1;33295:20;33313:1;33295:20;:::i;:::-;33290:25;;33329:20;33347:1;33329:20;:::i;:::-;33324:25;;33368:1;33358:35;;33373:18;;:::i;:::-;33358:35;33414:1;33411;33407:9;33402:14;;33246:176;;;;:::o;33428:180::-;33476:77;33473:1;33466:88;33573:4;33570:1;33563:15;33597:4;33594:1;33587:15", + "sourceMap": "261:491:135:-:0;;;395:49;;;;;;;;;;1390:113:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1464:5;1456;:13;;;;;;;;;;;;:::i;:::-;;1489:7;1479;:17;;;;;;;;;;;;:::i;:::-;;1390:113;;261:491:135;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:180:163:-;55:77;52:1;45:88;152:4;149:1;142:15;176:4;173:1;166:15;193:320;237:6;274:1;268:4;264:12;254:22;;321:1;315:4;311:12;342:18;332:81;;398:4;390:6;386:17;376:27;;332:81;460:2;452:6;449:14;429:18;426:38;423:84;;479:18;;:::i;:::-;423:84;244:269;193:320;;;:::o;261:491:135:-;;;;;;;", + "deployedSourceMap": "261:491:135:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1570:300:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2488:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4000:217;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3538:401;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4727:330;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5123:179;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2191:235;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1929:205;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2650:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4284:153;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5368:320;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;467:663:3;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4503:162:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;450:300:135;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1570::0;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;2488:98::-;2542:13;2574:5;2567:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2488:98;:::o;4000:217::-;4076:7;4103:16;4111:7;4103;:16::i;:::-;4095:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;4186:15;:24;4202:7;4186:24;;;;;;;;;;;;;;;;;;;;;4179:31;;4000:217;;;:::o;3538:401::-;3618:13;3634:23;3649:7;3634:14;:23::i;:::-;3618:39;;3681:5;3675:11;;:2;:11;;;3667:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3772:5;3756:21;;:12;:10;:12::i;:::-;:21;;;:62;;;;3781:37;3798:5;3805:12;:10;:12::i;:::-;3781:16;:37::i;:::-;3756:62;3735:165;;;;;;;;;;;;:::i;:::-;;;;;;;;;3911:21;3920:2;3924:7;3911:8;:21::i;:::-;3608:331;3538:401;;:::o;4727:330::-;4916:41;4935:12;:10;:12::i;:::-;4949:7;4916:18;:41::i;:::-;4908:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5022:28;5032:4;5038:2;5042:7;5022:9;:28::i;:::-;4727:330;;;:::o;5123:179::-;5256:39;5273:4;5279:2;5283:7;5256:39;;;;;;;;;;;;:16;:39::i;:::-;5123:179;;;:::o;2191:235::-;2263:7;2282:13;2298:7;:16;2306:7;2298:16;;;;;;;;;;;;;;;;;;;;;2282:32;;2349:1;2332:19;;:5;:19;;;2324:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2414:5;2407:12;;;2191:235;;;:::o;1929:205::-;2001:7;2045:1;2028:19;;:5;:19;;;2020:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;2111:9;:16;2121:5;2111:16;;;;;;;;;;;;;;;;2104:23;;1929:205;;;:::o;2650:102::-;2706:13;2738:7;2731:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2650:102;:::o;4284:153::-;4378:52;4397:12;:10;:12::i;:::-;4411:8;4421;4378:18;:52::i;:::-;4284:153;;:::o;5368:320::-;5537:41;5556:12;:10;:12::i;:::-;5570:7;5537:18;:41::i;:::-;5529:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;5642:39;5656:4;5662:2;5666:7;5675:5;5642:13;:39::i;:::-;5368:320;;;;:::o;467:663:3:-;540:13;573:16;581:7;573;:16::i;:::-;565:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;654:23;680:10;:19;691:7;680:19;;;;;;;;;;;654:45;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;709:18;730:10;:8;:10::i;:::-;709:31;;835:1;819:4;813:18;:23;809:70;;859:9;852:16;;;;;;809:70;1007:1;987:9;981:23;:27;977:106;;;1055:4;1061:9;1038:33;;;;;;;;;:::i;:::-;;;;;;;;;;;;;1024:48;;;;;;977:106;1100:23;1115:7;1100:14;:23::i;:::-;1093:30;;;;467:663;;;;:::o;4503:162:0:-;4600:4;4623:18;:25;4642:5;4623:25;;;;;;;;;;;;;;;:35;4649:8;4623:35;;;;;;;;;;;;;;;;;;;;;;;;;4616:42;;4503:162;;;;:::o;450:300:135:-;542:7;565:21;:9;:19;:21::i;:::-;597:17;617:19;:9;:17;:19::i;:::-;597:39;;646:27;652:9;663;646:5;:27::i;:::-;683:33;696:9;707:8;683:12;:33::i;:::-;734:9;727:16;;;450:300;;;;:::o;829:155:9:-;914:4;952:25;937:40;;;:11;:40;;;;930:47;;829:155;;;:::o;7160:125:0:-;7225:4;7276:1;7248:30;;:7;:16;7256:7;7248:16;;;;;;;;;;;;;;;;;;;;;:30;;;;7241:37;;7160:125;;;:::o;640:96:6:-;693:7;719:10;712:17;;640:96;:::o;11169:171:0:-;11270:2;11243:15;:24;11259:7;11243:24;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;11325:7;11321:2;11287:46;;11296:23;11311:7;11296:14;:23::i;:::-;11287:46;;;;;;;;;;;;11169:171;;:::o;7443:344::-;7536:4;7560:16;7568:7;7560;:16::i;:::-;7552:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;7635:13;7651:23;7666:7;7651:14;:23::i;:::-;7635:39;;7703:5;7692:16;;:7;:16;;;:52;;;;7712:32;7729:5;7736:7;7712:16;:32::i;:::-;7692:52;:87;;;;7772:7;7748:31;;:20;7760:7;7748:11;:20::i;:::-;:31;;;7692:87;7684:96;;;7443:344;;;;:::o;10453:605::-;10607:4;10580:31;;:23;10595:7;10580:14;:23::i;:::-;:31;;;10572:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;10685:1;10671:16;;:2;:16;;;10663:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;10739:39;10760:4;10766:2;10770:7;10739:20;:39::i;:::-;10840:29;10857:1;10861:7;10840:8;:29::i;:::-;10899:1;10880:9;:15;10890:4;10880:15;;;;;;;;;;;;;;;;:20;;;;;;;:::i;:::-;;;;;;;;10927:1;10910:9;:13;10920:2;10910:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;10957:2;10938:7;:16;10946:7;10938:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;10994:7;10990:2;10975:27;;10984:4;10975:27;;;;;;;;;;;;11013:38;11033:4;11039:2;11043:7;11013:19;:38::i;:::-;10453:605;;;:::o;11475:307::-;11625:8;11616:17;;:5;:17;;;11608:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;11711:8;11673:18;:25;11692:5;11673:25;;;;;;;;;;;;;;;:35;11699:8;11673:35;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;11756:8;11734:41;;11749:5;11734:41;;;11766:8;11734:41;;;;;;:::i;:::-;;;;;;;;11475:307;;;:::o;6550:::-;6701:28;6711:4;6717:2;6721:7;6701:9;:28::i;:::-;6747:48;6770:4;6776:2;6780:7;6789:5;6747:22;:48::i;:::-;6739:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;6550:307;;;;:::o;3389:92::-;3440:13;3465:9;;;;;;;;;;;;;;3389:92;:::o;2818:329::-;2891:13;2924:16;2932:7;2924;:16::i;:::-;2916:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;3003:21;3027:10;:8;:10::i;:::-;3003:34;;3078:1;3060:7;3054:21;:25;:86;;;;;;;;;;;;;;;;;3106:7;3115:18;:7;:16;:18::i;:::-;3089:45;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3054:86;3047:93;;;2818:329;;;:::o;945:123:7:-;1050:1;1032:7;:14;;;:19;;;;;;;;;;;945:123;:::o;827:112::-;892:7;918;:14;;;911:21;;827:112;;;:::o;9079:427:0:-;9172:1;9158:16;;:2;:16;;;9150:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9230:16;9238:7;9230;:16::i;:::-;9229:17;9221:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;9290:45;9319:1;9323:2;9327:7;9290:20;:45::i;:::-;9363:1;9346:9;:13;9356:2;9346:13;;;;;;;;;;;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;9393:2;9374:7;:16;9382:7;9374:16;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9436:7;9432:2;9411:33;;9428:1;9411:33;;;;;;;;;;;;9455:44;9483:1;9487:2;9491:7;9455:19;:44::i;:::-;9079:427;;:::o;1277:214:3:-;1376:16;1384:7;1376;:16::i;:::-;1368:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;1475:9;1453:10;:19;1464:7;1453:19;;;;;;;;;;;:31;;;;;;;;;;;;:::i;:::-;;1277:214;;:::o;13669:122:0:-;;;;:::o;14163:121::-;;;;:::o;12335:778::-;12485:4;12505:15;:2;:13;;;:15::i;:::-;12501:606;;;12556:2;12540:36;;;12577:12;:10;:12::i;:::-;12591:4;12597:7;12606:5;12540:72;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;12536:519;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12796:1;12779:6;:13;:18;12775:266;;12821:60;;;;;;;;;;:::i;:::-;;;;;;;;12775:266;12993:6;12987:13;12978:6;12974:2;12970:15;12963:38;12536:519;12672:41;;;12662:51;;;:6;:51;;;;12655:58;;;;;12501:606;13092:4;13085:11;;12335:778;;;;;;;:::o;328:703:8:-;384:13;610:1;601:5;:10;597:51;;627:10;;;;;;;;;;;;;;;;;;;;;597:51;657:12;672:5;657:20;;687:14;711:75;726:1;718:4;:9;711:75;;743:8;;;;;:::i;:::-;;;;773:2;765:10;;;;;:::i;:::-;;;711:75;;;795:19;827:6;817:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;795:39;;844:150;860:1;851:5;:10;844:150;;887:1;877:11;;;;;:::i;:::-;;;953:2;945:5;:10;;;;:::i;:::-;932:2;:24;;;;:::i;:::-;919:39;;902:6;909;902:14;;;;;;;;:::i;:::-;;;;;:56;;;;;;;;;;;981:2;972:11;;;;;:::i;:::-;;;844:150;;;1017:6;1003:21;;;;;328:703;;;;:::o;1175:320:5:-;1235:4;1487:1;1465:7;:19;;;:23;1458:30;;1175:320;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:163:-;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:619::-;5015:6;5023;5031;5080:2;5068:9;5059:7;5055:23;5051:32;5048:119;;;5086:79;;:::i;:::-;5048:119;5206:1;5231:53;5276:7;5267:6;5256:9;5252:22;5231:53;:::i;:::-;5221:63;;5177:117;5333:2;5359:53;5404:7;5395:6;5384:9;5380:22;5359:53;:::i;:::-;5349:63;;5304:118;5461:2;5487:53;5532:7;5523:6;5512:9;5508:22;5487:53;:::i;:::-;5477:63;;5432:118;4938:619;;;;;:::o;5563:329::-;5622:6;5671:2;5659:9;5650:7;5646:23;5642:32;5639:119;;;5677:79;;:::i;:::-;5639:119;5797:1;5822:53;5867:7;5858:6;5847:9;5843:22;5822:53;:::i;:::-;5812:63;;5768:117;5563:329;;;;:::o;5898:118::-;5985:24;6003:5;5985:24;:::i;:::-;5980:3;5973:37;5898:118;;:::o;6022:222::-;6115:4;6153:2;6142:9;6138:18;6130:26;;6166:71;6234:1;6223:9;6219:17;6210:6;6166:71;:::i;:::-;6022:222;;;;:::o;6250:116::-;6320:21;6335:5;6320:21;:::i;:::-;6313:5;6310:32;6300:60;;6356:1;6353;6346:12;6300:60;6250:116;:::o;6372:133::-;6415:5;6453:6;6440:20;6431:29;;6469:30;6493:5;6469:30;:::i;:::-;6372:133;;;;:::o;6511:468::-;6576:6;6584;6633:2;6621:9;6612:7;6608:23;6604:32;6601:119;;;6639:79;;:::i;:::-;6601:119;6759:1;6784:53;6829:7;6820:6;6809:9;6805:22;6784:53;:::i;:::-;6774:63;;6730:117;6886:2;6912:50;6954:7;6945:6;6934:9;6930:22;6912:50;:::i;:::-;6902:60;;6857:115;6511:468;;;;;:::o;6985:117::-;7094:1;7091;7084:12;7108:117;7217:1;7214;7207:12;7231:180;7279:77;7276:1;7269:88;7376:4;7373:1;7366:15;7400:4;7397:1;7390:15;7417:281;7500:27;7522:4;7500:27;:::i;:::-;7492:6;7488:40;7630:6;7618:10;7615:22;7594:18;7582:10;7579:34;7576:62;7573:88;;;7641:18;;:::i;:::-;7573:88;7681:10;7677:2;7670:22;7460:238;7417:281;;:::o;7704:129::-;7738:6;7765:20;;:::i;:::-;7755:30;;7794:33;7822:4;7814:6;7794:33;:::i;:::-;7704:129;;;:::o;7839:307::-;7900:4;7990:18;7982:6;7979:30;7976:56;;;8012:18;;:::i;:::-;7976:56;8050:29;8072:6;8050:29;:::i;:::-;8042:37;;8134:4;8128;8124:15;8116:23;;7839:307;;;:::o;8152:154::-;8236:6;8231:3;8226;8213:30;8298:1;8289:6;8284:3;8280:16;8273:27;8152:154;;;:::o;8312:410::-;8389:5;8414:65;8430:48;8471:6;8430:48;:::i;:::-;8414:65;:::i;:::-;8405:74;;8502:6;8495:5;8488:21;8540:4;8533:5;8529:16;8578:3;8569:6;8564:3;8560:16;8557:25;8554:112;;;8585:79;;:::i;:::-;8554:112;8675:41;8709:6;8704:3;8699;8675:41;:::i;:::-;8395:327;8312:410;;;;;:::o;8741:338::-;8796:5;8845:3;8838:4;8830:6;8826:17;8822:27;8812:122;;8853:79;;:::i;:::-;8812:122;8970:6;8957:20;8995:78;9069:3;9061:6;9054:4;9046:6;9042:17;8995:78;:::i;:::-;8986:87;;8802:277;8741:338;;;;:::o;9085:943::-;9180:6;9188;9196;9204;9253:3;9241:9;9232:7;9228:23;9224:33;9221:120;;;9260:79;;:::i;:::-;9221:120;9380:1;9405:53;9450:7;9441:6;9430:9;9426:22;9405:53;:::i;:::-;9395:63;;9351:117;9507:2;9533:53;9578:7;9569:6;9558:9;9554:22;9533:53;:::i;:::-;9523:63;;9478:118;9635:2;9661:53;9706:7;9697:6;9686:9;9682:22;9661:53;:::i;:::-;9651:63;;9606:118;9791:2;9780:9;9776:18;9763:32;9822:18;9814:6;9811:30;9808:117;;;9844:79;;:::i;:::-;9808:117;9949:62;10003:7;9994:6;9983:9;9979:22;9949:62;:::i;:::-;9939:72;;9734:287;9085:943;;;;;;;:::o;10034:474::-;10102:6;10110;10159:2;10147:9;10138:7;10134:23;10130:32;10127:119;;;10165:79;;:::i;:::-;10127:119;10285:1;10310:53;10355:7;10346:6;10335:9;10331:22;10310:53;:::i;:::-;10300:63;;10256:117;10412:2;10438:53;10483:7;10474:6;10463:9;10459:22;10438:53;:::i;:::-;10428:63;;10383:118;10034:474;;;;;:::o;10514:308::-;10576:4;10666:18;10658:6;10655:30;10652:56;;;10688:18;;:::i;:::-;10652:56;10726:29;10748:6;10726:29;:::i;:::-;10718:37;;10810:4;10804;10800:15;10792:23;;10514:308;;;:::o;10828:412::-;10906:5;10931:66;10947:49;10989:6;10947:49;:::i;:::-;10931:66;:::i;:::-;10922:75;;11020:6;11013:5;11006:21;11058:4;11051:5;11047:16;11096:3;11087:6;11082:3;11078:16;11075:25;11072:112;;;11103:79;;:::i;:::-;11072:112;11193:41;11227:6;11222:3;11217;11193:41;:::i;:::-;10912:328;10828:412;;;;;:::o;11260:340::-;11316:5;11365:3;11358:4;11350:6;11346:17;11342:27;11332:122;;11373:79;;:::i;:::-;11332:122;11490:6;11477:20;11515:79;11590:3;11582:6;11575:4;11567:6;11563:17;11515:79;:::i;:::-;11506:88;;11322:278;11260:340;;;;:::o;11606:654::-;11684:6;11692;11741:2;11729:9;11720:7;11716:23;11712:32;11709:119;;;11747:79;;:::i;:::-;11709:119;11867:1;11892:53;11937:7;11928:6;11917:9;11913:22;11892:53;:::i;:::-;11882:63;;11838:117;12022:2;12011:9;12007:18;11994:32;12053:18;12045:6;12042:30;12039:117;;;12075:79;;:::i;:::-;12039:117;12180:63;12235:7;12226:6;12215:9;12211:22;12180:63;:::i;:::-;12170:73;;11965:288;11606:654;;;;;:::o;12266:180::-;12314:77;12311:1;12304:88;12411:4;12408:1;12401:15;12435:4;12432:1;12425:15;12452:320;12496:6;12533:1;12527:4;12523:12;12513:22;;12580:1;12574:4;12570:12;12601:18;12591:81;;12657:4;12649:6;12645:17;12635:27;;12591:81;12719:2;12711:6;12708:14;12688:18;12685:38;12682:84;;12738:18;;:::i;:::-;12682:84;12503:269;12452:320;;;:::o;12778:231::-;12918:34;12914:1;12906:6;12902:14;12895:58;12987:14;12982:2;12974:6;12970:15;12963:39;12778:231;:::o;13015:366::-;13157:3;13178:67;13242:2;13237:3;13178:67;:::i;:::-;13171:74;;13254:93;13343:3;13254:93;:::i;:::-;13372:2;13367:3;13363:12;13356:19;;13015:366;;;:::o;13387:419::-;13553:4;13591:2;13580:9;13576:18;13568:26;;13640:9;13634:4;13630:20;13626:1;13615:9;13611:17;13604:47;13668:131;13794:4;13668:131;:::i;:::-;13660:139;;13387:419;;;:::o;13812:220::-;13952:34;13948:1;13940:6;13936:14;13929:58;14021:3;14016:2;14008:6;14004:15;13997:28;13812:220;:::o;14038:366::-;14180:3;14201:67;14265:2;14260:3;14201:67;:::i;:::-;14194:74;;14277:93;14366:3;14277:93;:::i;:::-;14395:2;14390:3;14386:12;14379:19;;14038:366;;;:::o;14410:419::-;14576:4;14614:2;14603:9;14599:18;14591:26;;14663:9;14657:4;14653:20;14649:1;14638:9;14634:17;14627:47;14691:131;14817:4;14691:131;:::i;:::-;14683:139;;14410:419;;;:::o;14835:243::-;14975:34;14971:1;14963:6;14959:14;14952:58;15044:26;15039:2;15031:6;15027:15;15020:51;14835:243;:::o;15084:366::-;15226:3;15247:67;15311:2;15306:3;15247:67;:::i;:::-;15240:74;;15323:93;15412:3;15323:93;:::i;:::-;15441:2;15436:3;15432:12;15425:19;;15084:366;;;:::o;15456:419::-;15622:4;15660:2;15649:9;15645:18;15637:26;;15709:9;15703:4;15699:20;15695:1;15684:9;15680:17;15673:47;15737:131;15863:4;15737:131;:::i;:::-;15729:139;;15456:419;;;:::o;15881:236::-;16021:34;16017:1;16009:6;16005:14;15998:58;16090:19;16085:2;16077:6;16073:15;16066:44;15881:236;:::o;16123:366::-;16265:3;16286:67;16350:2;16345:3;16286:67;:::i;:::-;16279:74;;16362:93;16451:3;16362:93;:::i;:::-;16480:2;16475:3;16471:12;16464:19;;16123:366;;;:::o;16495:419::-;16661:4;16699:2;16688:9;16684:18;16676:26;;16748:9;16742:4;16738:20;16734:1;16723:9;16719:17;16712:47;16776:131;16902:4;16776:131;:::i;:::-;16768:139;;16495:419;;;:::o;16920:228::-;17060:34;17056:1;17048:6;17044:14;17037:58;17129:11;17124:2;17116:6;17112:15;17105:36;16920:228;:::o;17154:366::-;17296:3;17317:67;17381:2;17376:3;17317:67;:::i;:::-;17310:74;;17393:93;17482:3;17393:93;:::i;:::-;17511:2;17506:3;17502:12;17495:19;;17154:366;;;:::o;17526:419::-;17692:4;17730:2;17719:9;17715:18;17707:26;;17779:9;17773:4;17769:20;17765:1;17754:9;17750:17;17743:47;17807:131;17933:4;17807:131;:::i;:::-;17799:139;;17526:419;;;:::o;17951:229::-;18091:34;18087:1;18079:6;18075:14;18068:58;18160:12;18155:2;18147:6;18143:15;18136:37;17951:229;:::o;18186:366::-;18328:3;18349:67;18413:2;18408:3;18349:67;:::i;:::-;18342:74;;18425:93;18514:3;18425:93;:::i;:::-;18543:2;18538:3;18534:12;18527:19;;18186:366;;;:::o;18558:419::-;18724:4;18762:2;18751:9;18747:18;18739:26;;18811:9;18805:4;18801:20;18797:1;18786:9;18782:17;18775:47;18839:131;18965:4;18839:131;:::i;:::-;18831:139;;18558:419;;;:::o;18983:236::-;19123:34;19119:1;19111:6;19107:14;19100:58;19192:19;19187:2;19179:6;19175:15;19168:44;18983:236;:::o;19225:366::-;19367:3;19388:67;19452:2;19447:3;19388:67;:::i;:::-;19381:74;;19464:93;19553:3;19464:93;:::i;:::-;19582:2;19577:3;19573:12;19566:19;;19225:366;;;:::o;19597:419::-;19763:4;19801:2;19790:9;19786:18;19778:26;;19850:9;19844:4;19840:20;19836:1;19825:9;19821:17;19814:47;19878:131;20004:4;19878:131;:::i;:::-;19870:139;;19597:419;;;:::o;20022:148::-;20124:11;20161:3;20146:18;;20022:148;;;;:::o;20176:377::-;20282:3;20310:39;20343:5;20310:39;:::i;:::-;20365:89;20447:6;20442:3;20365:89;:::i;:::-;20358:96;;20463:52;20508:6;20503:3;20496:4;20489:5;20485:16;20463:52;:::i;:::-;20540:6;20535:3;20531:16;20524:23;;20286:267;20176:377;;;;:::o;20559:435::-;20739:3;20761:95;20852:3;20843:6;20761:95;:::i;:::-;20754:102;;20873:95;20964:3;20955:6;20873:95;:::i;:::-;20866:102;;20985:3;20978:10;;20559:435;;;;;:::o;21000:231::-;21140:34;21136:1;21128:6;21124:14;21117:58;21209:14;21204:2;21196:6;21192:15;21185:39;21000:231;:::o;21237:366::-;21379:3;21400:67;21464:2;21459:3;21400:67;:::i;:::-;21393:74;;21476:93;21565:3;21476:93;:::i;:::-;21594:2;21589:3;21585:12;21578:19;;21237:366;;;:::o;21609:419::-;21775:4;21813:2;21802:9;21798:18;21790:26;;21862:9;21856:4;21852:20;21848:1;21837:9;21833:17;21826:47;21890:131;22016:4;21890:131;:::i;:::-;21882:139;;21609:419;;;:::o;22034:224::-;22174:34;22170:1;22162:6;22158:14;22151:58;22243:7;22238:2;22230:6;22226:15;22219:32;22034:224;:::o;22264:366::-;22406:3;22427:67;22491:2;22486:3;22427:67;:::i;:::-;22420:74;;22503:93;22592:3;22503:93;:::i;:::-;22621:2;22616:3;22612:12;22605:19;;22264:366;;;:::o;22636:419::-;22802:4;22840:2;22829:9;22825:18;22817:26;;22889:9;22883:4;22879:20;22875:1;22864:9;22860:17;22853:47;22917:131;23043:4;22917:131;:::i;:::-;22909:139;;22636:419;;;:::o;23061:223::-;23201:34;23197:1;23189:6;23185:14;23178:58;23270:6;23265:2;23257:6;23253:15;23246:31;23061:223;:::o;23290:366::-;23432:3;23453:67;23517:2;23512:3;23453:67;:::i;:::-;23446:74;;23529:93;23618:3;23529:93;:::i;:::-;23647:2;23642:3;23638:12;23631:19;;23290:366;;;:::o;23662:419::-;23828:4;23866:2;23855:9;23851:18;23843:26;;23915:9;23909:4;23905:20;23901:1;23890:9;23886:17;23879:47;23943:131;24069:4;23943:131;:::i;:::-;23935:139;;23662:419;;;:::o;24087:180::-;24135:77;24132:1;24125:88;24232:4;24229:1;24222:15;24256:4;24253:1;24246:15;24273:191;24313:4;24333:20;24351:1;24333:20;:::i;:::-;24328:25;;24367:20;24385:1;24367:20;:::i;:::-;24362:25;;24406:1;24403;24400:8;24397:34;;;24411:18;;:::i;:::-;24397:34;24456:1;24453;24449:9;24441:17;;24273:191;;;;:::o;24470:305::-;24510:3;24529:20;24547:1;24529:20;:::i;:::-;24524:25;;24563:20;24581:1;24563:20;:::i;:::-;24558:25;;24717:1;24649:66;24645:74;24642:1;24639:81;24636:107;;;24723:18;;:::i;:::-;24636:107;24767:1;24764;24760:9;24753:16;;24470:305;;;;:::o;24781:175::-;24921:27;24917:1;24909:6;24905:14;24898:51;24781:175;:::o;24962:366::-;25104:3;25125:67;25189:2;25184:3;25125:67;:::i;:::-;25118:74;;25201:93;25290:3;25201:93;:::i;:::-;25319:2;25314:3;25310:12;25303:19;;24962:366;;;:::o;25334:419::-;25500:4;25538:2;25527:9;25523:18;25515:26;;25587:9;25581:4;25577:20;25573:1;25562:9;25558:17;25551:47;25615:131;25741:4;25615:131;:::i;:::-;25607:139;;25334:419;;;:::o;25759:237::-;25899:34;25895:1;25887:6;25883:14;25876:58;25968:20;25963:2;25955:6;25951:15;25944:45;25759:237;:::o;26002:366::-;26144:3;26165:67;26229:2;26224:3;26165:67;:::i;:::-;26158:74;;26241:93;26330:3;26241:93;:::i;:::-;26359:2;26354:3;26350:12;26343:19;;26002:366;;;:::o;26374:419::-;26540:4;26578:2;26567:9;26563:18;26555:26;;26627:9;26621:4;26617:20;26613:1;26602:9;26598:17;26591:47;26655:131;26781:4;26655:131;:::i;:::-;26647:139;;26374:419;;;:::o;26799:234::-;26939:34;26935:1;26927:6;26923:14;26916:58;27008:17;27003:2;26995:6;26991:15;26984:42;26799:234;:::o;27039:366::-;27181:3;27202:67;27266:2;27261:3;27202:67;:::i;:::-;27195:74;;27278:93;27367:3;27278:93;:::i;:::-;27396:2;27391:3;27387:12;27380:19;;27039:366;;;:::o;27411:419::-;27577:4;27615:2;27604:9;27600:18;27592:26;;27664:9;27658:4;27654:20;27650:1;27639:9;27635:17;27628:47;27692:131;27818:4;27692:131;:::i;:::-;27684:139;;27411:419;;;:::o;27836:182::-;27976:34;27972:1;27964:6;27960:14;27953:58;27836:182;:::o;28024:366::-;28166:3;28187:67;28251:2;28246:3;28187:67;:::i;:::-;28180:74;;28263:93;28352:3;28263:93;:::i;:::-;28381:2;28376:3;28372:12;28365:19;;28024:366;;;:::o;28396:419::-;28562:4;28600:2;28589:9;28585:18;28577:26;;28649:9;28643:4;28639:20;28635:1;28624:9;28620:17;28613:47;28677:131;28803:4;28677:131;:::i;:::-;28669:139;;28396:419;;;:::o;28821:178::-;28961:30;28957:1;28949:6;28945:14;28938:54;28821:178;:::o;29005:366::-;29147:3;29168:67;29232:2;29227:3;29168:67;:::i;:::-;29161:74;;29244:93;29333:3;29244:93;:::i;:::-;29362:2;29357:3;29353:12;29346:19;;29005:366;;;:::o;29377:419::-;29543:4;29581:2;29570:9;29566:18;29558:26;;29630:9;29624:4;29620:20;29616:1;29605:9;29601:17;29594:47;29658:131;29784:4;29658:131;:::i;:::-;29650:139;;29377:419;;;:::o;29802:233::-;29942:34;29938:1;29930:6;29926:14;29919:58;30011:16;30006:2;29998:6;29994:15;29987:41;29802:233;:::o;30041:366::-;30183:3;30204:67;30268:2;30263:3;30204:67;:::i;:::-;30197:74;;30280:93;30369:3;30280:93;:::i;:::-;30398:2;30393:3;30389:12;30382:19;;30041:366;;;:::o;30413:419::-;30579:4;30617:2;30606:9;30602:18;30594:26;;30666:9;30660:4;30656:20;30652:1;30641:9;30637:17;30630:47;30694:131;30820:4;30694:131;:::i;:::-;30686:139;;30413:419;;;:::o;30838:98::-;30889:6;30923:5;30917:12;30907:22;;30838:98;;;:::o;30942:168::-;31025:11;31059:6;31054:3;31047:19;31099:4;31094:3;31090:14;31075:29;;30942:168;;;;:::o;31116:360::-;31202:3;31230:38;31262:5;31230:38;:::i;:::-;31284:70;31347:6;31342:3;31284:70;:::i;:::-;31277:77;;31363:52;31408:6;31403:3;31396:4;31389:5;31385:16;31363:52;:::i;:::-;31440:29;31462:6;31440:29;:::i;:::-;31435:3;31431:39;31424:46;;31206:270;31116:360;;;;:::o;31482:640::-;31677:4;31715:3;31704:9;31700:19;31692:27;;31729:71;31797:1;31786:9;31782:17;31773:6;31729:71;:::i;:::-;31810:72;31878:2;31867:9;31863:18;31854:6;31810:72;:::i;:::-;31892;31960:2;31949:9;31945:18;31936:6;31892:72;:::i;:::-;32011:9;32005:4;32001:20;31996:2;31985:9;31981:18;31974:48;32039:76;32110:4;32101:6;32039:76;:::i;:::-;32031:84;;31482:640;;;;;;;:::o;32128:141::-;32184:5;32215:6;32209:13;32200:22;;32231:32;32257:5;32231:32;:::i;:::-;32128:141;;;;:::o;32275:349::-;32344:6;32393:2;32381:9;32372:7;32368:23;32364:32;32361:119;;;32399:79;;:::i;:::-;32361:119;32519:1;32544:63;32599:7;32590:6;32579:9;32575:22;32544:63;:::i;:::-;32534:73;;32490:127;32275:349;;;;:::o;32630:233::-;32669:3;32692:24;32710:5;32692:24;:::i;:::-;32683:33;;32738:66;32731:5;32728:77;32725:103;;32808:18;;:::i;:::-;32725:103;32855:1;32848:5;32844:13;32837:20;;32630:233;;;:::o;32869:180::-;32917:77;32914:1;32907:88;33014:4;33011:1;33004:15;33038:4;33035:1;33028:15;33055:185;33095:1;33112:20;33130:1;33112:20;:::i;:::-;33107:25;;33146:20;33164:1;33146:20;:::i;:::-;33141:25;;33185:1;33175:35;;33190:18;;:::i;:::-;33175:35;33232:1;33229;33225:9;33220:14;;33055:185;;;;:::o;33246:176::-;33278:1;33295:20;33313:1;33295:20;:::i;:::-;33290:25;;33329:20;33347:1;33329:20;:::i;:::-;33324:25;;33368:1;33358:35;;33373:18;;:::i;:::-;33358:35;33414:1;33411;33407:9;33402:14;;33246:176;;;;:::o;33428:180::-;33476:77;33473:1;33466:88;33573:4;33570:1;33563:15;33597:4;33594:1;33587:15", "source": "//Contract based on https://docs.openzeppelin.com/contracts/3.x/erc721\n// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\nimport \"@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol\";\nimport \"@openzeppelin/contracts/utils/Counters.sol\";\n\ncontract MetadevsContract is ERC721URIStorage {\n using Counters for Counters.Counter;\n Counters.Counter private _tokenIds;\n\n constructor() ERC721(\"MetadevsToken\", \"MDTKN\") {}\n\n function mintNFT(address recipient, string memory tokenURI)\n public\n returns (uint256)\n {\n _tokenIds.increment();\n\n uint256 newItemId = _tokenIds.current();\n _mint(recipient, newItemId);\n _setTokenURI(newItemId, tokenURI);\n\n return newItemId;\n }\n}\n", - "sourcePath": "/Users/gabriel/Github/metadevs/1-repositorios/metadevs-nft-minter/src/contracts/MetadevsContract.sol", + "sourcePath": "/Users/gabriel/Github/metadevs/1-repositorios/metadevs-minter/src/contracts/MetadevsContract.sol", "ast": { "absolutePath": "project:/src/contracts/MetadevsContract.sol", "exportedSymbols": { @@ -15732,18 +15732,18 @@ 999 ], "MetadevsContract": [ - 1839 + 2087 ], "Strings": [ 1748 ] }, - "id": 1840, + "id": 2088, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1786, + "id": 2034, "literals": [ "solidity", "^", @@ -15751,29 +15751,29 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "103:23:11" + "src": "103:23:135" }, { "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", "file": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", - "id": 1787, + "id": 2035, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1840, + "scope": 2088, "sourceUnit": 1128, - "src": "128:78:11", + "src": "128:78:135", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "@openzeppelin/contracts/utils/Counters.sol", "file": "@openzeppelin/contracts/utils/Counters.sol", - "id": 1788, + "id": 2036, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1840, + "scope": 2088, "sourceUnit": 1546, - "src": "207:52:11", + "src": "207:52:135", "symbolAliases": [], "unitAlias": "" }, @@ -15782,24 +15782,24 @@ "baseContracts": [ { "baseName": { - "id": 1789, + "id": 2037, "name": "ERC721URIStorage", "nodeType": "IdentifierPath", "referencedDeclaration": 1127, - "src": "290:16:11" + "src": "290:16:135" }, - "id": 1790, + "id": 2038, "nodeType": "InheritanceSpecifier", - "src": "290:16:11" + "src": "290:16:135" } ], "canonicalName": "MetadevsContract", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 1839, + "id": 2087, "linearizedBaseContracts": [ - 1839, + 2087, 1127, 865, 1154, @@ -15809,33 +15809,33 @@ 1471 ], "name": "MetadevsContract", - "nameLocation": "270:16:11", + "nameLocation": "270:16:135", "nodeType": "ContractDefinition", "nodes": [ { "global": false, - "id": 1794, + "id": 2042, "libraryName": { - "id": 1791, + "id": 2039, "name": "Counters", "nodeType": "IdentifierPath", "referencedDeclaration": 1545, - "src": "319:8:11" + "src": "319:8:135" }, "nodeType": "UsingForDirective", - "src": "313:36:11", + "src": "313:36:135", "typeName": { - "id": 1793, + "id": 2041, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1792, + "id": 2040, "name": "Counters.Counter", "nodeType": "IdentifierPath", "referencedDeclaration": 1477, - "src": "332:16:11" + "src": "332:16:135" }, "referencedDeclaration": 1477, - "src": "332:16:11", + "src": "332:16:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", "typeString": "struct Counters.Counter" @@ -15844,13 +15844,13 @@ }, { "constant": false, - "id": 1797, + "id": 2045, "mutability": "mutable", "name": "_tokenIds", - "nameLocation": "379:9:11", + "nameLocation": "379:9:135", "nodeType": "VariableDeclaration", - "scope": 1839, - "src": "354:34:11", + "scope": 2087, + "src": "354:34:135", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15858,17 +15858,17 @@ "typeString": "struct Counters.Counter" }, "typeName": { - "id": 1796, + "id": 2044, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1795, + "id": 2043, "name": "Counters.Counter", "nodeType": "IdentifierPath", "referencedDeclaration": 1477, - "src": "354:16:11" + "src": "354:16:135" }, "referencedDeclaration": 1477, - "src": "354:16:11", + "src": "354:16:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", "typeString": "struct Counters.Counter" @@ -15878,12 +15878,12 @@ }, { "body": { - "id": 1804, + "id": 2052, "nodeType": "Block", - "src": "442:2:11", + "src": "442:2:135", "statements": [] }, - "id": 1805, + "id": 2053, "implemented": true, "kind": "constructor", "modifiers": [ @@ -15891,14 +15891,14 @@ "arguments": [ { "hexValue": "4d65746164657673546f6b656e", - "id": 1800, + "id": 2048, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "416:15:11", + "src": "416:15:135", "typeDescriptions": { "typeIdentifier": "t_stringliteral_aa9814ab51ed342381304ba119d0e9e925c525ee60e2e38e181b155e46a43d19", "typeString": "literal_string \"MetadevsToken\"" @@ -15907,14 +15907,14 @@ }, { "hexValue": "4d44544b4e", - "id": 1801, + "id": 2049, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "433:7:11", + "src": "433:7:135", "typeDescriptions": { "typeIdentifier": "t_stringliteral_158773c868d4d920ad45c29a2670c2d1a1d9be4768011f08633c69e8a90dcb86", "typeString": "literal_string \"MDTKN\"" @@ -15922,45 +15922,45 @@ "value": "MDTKN" } ], - "id": 1802, + "id": 2050, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 1799, + "id": 2047, "name": "ERC721", "nodeType": "IdentifierPath", "referencedDeclaration": 865, - "src": "409:6:11" + "src": "409:6:135" }, "nodeType": "ModifierInvocation", - "src": "409:32:11" + "src": "409:32:135" } ], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 1798, + "id": 2046, "nodeType": "ParameterList", "parameters": [], - "src": "406:2:11" + "src": "406:2:135" }, "returnParameters": { - "id": 1803, + "id": 2051, "nodeType": "ParameterList", "parameters": [], - "src": "442:0:11" + "src": "442:0:135" }, - "scope": 1839, - "src": "395:49:11", + "scope": 2087, + "src": "395:49:135", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1837, + "id": 2085, "nodeType": "Block", - "src": "555:195:11", + "src": "555:195:135", "statements": [ { "expression": { @@ -15968,18 +15968,18 @@ "expression": { "argumentTypes": [], "expression": { - "id": 1814, + "id": 2062, "name": "_tokenIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "565:9:11", + "referencedDeclaration": 2045, + "src": "565:9:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 1816, + "id": 2064, "isConstant": false, "isLValue": true, "isPure": false, @@ -15987,13 +15987,13 @@ "memberName": "increment", "nodeType": "MemberAccess", "referencedDeclaration": 1503, - "src": "565:19:11", + "src": "565:19:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Counter_$1477_storage_ptr_$returns$__$bound_to$_t_struct$_Counter_$1477_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer)" } }, - "id": 1817, + "id": 2065, "isConstant": false, "isLValue": false, "isPure": false, @@ -16001,31 +16001,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "565:21:11", + "src": "565:21:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1818, + "id": 2066, "nodeType": "ExpressionStatement", - "src": "565:21:11" + "src": "565:21:135" }, { "assignments": [ - 1820 + 2068 ], "declarations": [ { "constant": false, - "id": 1820, + "id": 2068, "mutability": "mutable", "name": "newItemId", - "nameLocation": "605:9:11", + "nameLocation": "605:9:135", "nodeType": "VariableDeclaration", - "scope": 1837, - "src": "597:17:11", + "scope": 2085, + "src": "597:17:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16033,10 +16033,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1819, + "id": 2067, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "597:7:11", + "src": "597:7:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16045,24 +16045,24 @@ "visibility": "internal" } ], - "id": 1824, + "id": 2072, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 1821, + "id": 2069, "name": "_tokenIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "617:9:11", + "referencedDeclaration": 2045, + "src": "617:9:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 1822, + "id": 2070, "isConstant": false, "isLValue": true, "isPure": false, @@ -16070,13 +16070,13 @@ "memberName": "current", "nodeType": "MemberAccess", "referencedDeclaration": 1489, - "src": "617:17:11", + "src": "617:17:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_Counter_$1477_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Counter_$1477_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer) view returns (uint256)" } }, - "id": 1823, + "id": 2071, "isConstant": false, "isLValue": false, "isPure": false, @@ -16084,7 +16084,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "617:19:11", + "src": "617:19:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -16092,30 +16092,30 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "597:39:11" + "src": "597:39:135" }, { "expression": { "arguments": [ { - "id": 1826, + "id": 2074, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1807, - "src": "652:9:11", + "referencedDeclaration": 2055, + "src": "652:9:135", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1827, + "id": 2075, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "663:9:11", + "referencedDeclaration": 2068, + "src": "663:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16133,18 +16133,18 @@ "typeString": "uint256" } ], - "id": 1825, + "id": 2073, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 589, - "src": "646:5:11", + "src": "646:5:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 1828, + "id": 2076, "isConstant": false, "isLValue": false, "isPure": false, @@ -16152,39 +16152,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "646:27:11", + "src": "646:27:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1829, + "id": 2077, "nodeType": "ExpressionStatement", - "src": "646:27:11" + "src": "646:27:135" }, { "expression": { "arguments": [ { - "id": 1831, + "id": 2079, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "696:9:11", + "referencedDeclaration": 2068, + "src": "696:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 1832, + "id": 2080, "name": "tokenURI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1809, - "src": "707:8:11", + "referencedDeclaration": 2057, + "src": "707:8:135", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -16202,18 +16202,18 @@ "typeString": "string memory" } ], - "id": 1830, + "id": 2078, "name": "_setTokenURI", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1096, - "src": "683:12:11", + "src": "683:12:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$", "typeString": "function (uint256,string memory)" } }, - "id": 1833, + "id": 2081, "isConstant": false, "isLValue": false, "isPure": false, @@ -16221,58 +16221,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "683:33:11", + "src": "683:33:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1834, + "id": 2082, "nodeType": "ExpressionStatement", - "src": "683:33:11" + "src": "683:33:135" }, { "expression": { - "id": 1835, + "id": 2083, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "734:9:11", + "referencedDeclaration": 2068, + "src": "734:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1813, - "id": 1836, + "functionReturnParameters": 2061, + "id": 2084, "nodeType": "Return", - "src": "727:16:11" + "src": "727:16:135" } ] }, "functionSelector": "eacabe14", - "id": 1838, + "id": 2086, "implemented": true, "kind": "function", "modifiers": [], "name": "mintNFT", - "nameLocation": "459:7:11", + "nameLocation": "459:7:135", "nodeType": "FunctionDefinition", "parameters": { - "id": 1810, + "id": 2058, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1807, + "id": 2055, "mutability": "mutable", "name": "recipient", - "nameLocation": "475:9:11", + "nameLocation": "475:9:135", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "467:17:11", + "scope": 2086, + "src": "467:17:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16280,10 +16280,10 @@ "typeString": "address" }, "typeName": { - "id": 1806, + "id": 2054, "name": "address", "nodeType": "ElementaryTypeName", - "src": "467:7:11", + "src": "467:7:135", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -16294,13 +16294,13 @@ }, { "constant": false, - "id": 1809, + "id": 2057, "mutability": "mutable", "name": "tokenURI", - "nameLocation": "500:8:11", + "nameLocation": "500:8:135", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "486:22:11", + "scope": 2086, + "src": "486:22:135", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16308,10 +16308,10 @@ "typeString": "string" }, "typeName": { - "id": 1808, + "id": 2056, "name": "string", "nodeType": "ElementaryTypeName", - "src": "486:6:11", + "src": "486:6:135", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -16320,21 +16320,21 @@ "visibility": "internal" } ], - "src": "466:43:11" + "src": "466:43:135" }, "returnParameters": { - "id": 1813, + "id": 2061, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1812, + "id": 2060, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "542:7:11", + "scope": 2086, + "src": "542:7:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16342,10 +16342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1811, + "id": 2059, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "542:7:11", + "src": "542:7:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16354,21 +16354,21 @@ "visibility": "internal" } ], - "src": "541:9:11" + "src": "541:9:135" }, - "scope": 1839, - "src": "450:300:11", + "scope": 2087, + "src": "450:300:135", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" } ], - "scope": 1840, - "src": "261:491:11", + "scope": 2088, + "src": "261:491:135", "usedErrors": [] } ], - "src": "103:650:11" + "src": "103:650:135" }, "legacyAST": { "absolutePath": "project:/src/contracts/MetadevsContract.sol", @@ -16404,18 +16404,18 @@ 999 ], "MetadevsContract": [ - 1839 + 2087 ], "Strings": [ 1748 ] }, - "id": 1840, + "id": 2088, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { - "id": 1786, + "id": 2034, "literals": [ "solidity", "^", @@ -16423,29 +16423,29 @@ ".0" ], "nodeType": "PragmaDirective", - "src": "103:23:11" + "src": "103:23:135" }, { "absolutePath": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", "file": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol", - "id": 1787, + "id": 2035, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1840, + "scope": 2088, "sourceUnit": 1128, - "src": "128:78:11", + "src": "128:78:135", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "@openzeppelin/contracts/utils/Counters.sol", "file": "@openzeppelin/contracts/utils/Counters.sol", - "id": 1788, + "id": 2036, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", - "scope": 1840, + "scope": 2088, "sourceUnit": 1546, - "src": "207:52:11", + "src": "207:52:135", "symbolAliases": [], "unitAlias": "" }, @@ -16454,24 +16454,24 @@ "baseContracts": [ { "baseName": { - "id": 1789, + "id": 2037, "name": "ERC721URIStorage", "nodeType": "IdentifierPath", "referencedDeclaration": 1127, - "src": "290:16:11" + "src": "290:16:135" }, - "id": 1790, + "id": 2038, "nodeType": "InheritanceSpecifier", - "src": "290:16:11" + "src": "290:16:135" } ], "canonicalName": "MetadevsContract", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, - "id": 1839, + "id": 2087, "linearizedBaseContracts": [ - 1839, + 2087, 1127, 865, 1154, @@ -16481,33 +16481,33 @@ 1471 ], "name": "MetadevsContract", - "nameLocation": "270:16:11", + "nameLocation": "270:16:135", "nodeType": "ContractDefinition", "nodes": [ { "global": false, - "id": 1794, + "id": 2042, "libraryName": { - "id": 1791, + "id": 2039, "name": "Counters", "nodeType": "IdentifierPath", "referencedDeclaration": 1545, - "src": "319:8:11" + "src": "319:8:135" }, "nodeType": "UsingForDirective", - "src": "313:36:11", + "src": "313:36:135", "typeName": { - "id": 1793, + "id": 2041, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1792, + "id": 2040, "name": "Counters.Counter", "nodeType": "IdentifierPath", "referencedDeclaration": 1477, - "src": "332:16:11" + "src": "332:16:135" }, "referencedDeclaration": 1477, - "src": "332:16:11", + "src": "332:16:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", "typeString": "struct Counters.Counter" @@ -16516,13 +16516,13 @@ }, { "constant": false, - "id": 1797, + "id": 2045, "mutability": "mutable", "name": "_tokenIds", - "nameLocation": "379:9:11", + "nameLocation": "379:9:135", "nodeType": "VariableDeclaration", - "scope": 1839, - "src": "354:34:11", + "scope": 2087, + "src": "354:34:135", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -16530,17 +16530,17 @@ "typeString": "struct Counters.Counter" }, "typeName": { - "id": 1796, + "id": 2044, "nodeType": "UserDefinedTypeName", "pathNode": { - "id": 1795, + "id": 2043, "name": "Counters.Counter", "nodeType": "IdentifierPath", "referencedDeclaration": 1477, - "src": "354:16:11" + "src": "354:16:135" }, "referencedDeclaration": 1477, - "src": "354:16:11", + "src": "354:16:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage_ptr", "typeString": "struct Counters.Counter" @@ -16550,12 +16550,12 @@ }, { "body": { - "id": 1804, + "id": 2052, "nodeType": "Block", - "src": "442:2:11", + "src": "442:2:135", "statements": [] }, - "id": 1805, + "id": 2053, "implemented": true, "kind": "constructor", "modifiers": [ @@ -16563,14 +16563,14 @@ "arguments": [ { "hexValue": "4d65746164657673546f6b656e", - "id": 1800, + "id": 2048, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "416:15:11", + "src": "416:15:135", "typeDescriptions": { "typeIdentifier": "t_stringliteral_aa9814ab51ed342381304ba119d0e9e925c525ee60e2e38e181b155e46a43d19", "typeString": "literal_string \"MetadevsToken\"" @@ -16579,14 +16579,14 @@ }, { "hexValue": "4d44544b4e", - "id": 1801, + "id": 2049, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "433:7:11", + "src": "433:7:135", "typeDescriptions": { "typeIdentifier": "t_stringliteral_158773c868d4d920ad45c29a2670c2d1a1d9be4768011f08633c69e8a90dcb86", "typeString": "literal_string \"MDTKN\"" @@ -16594,45 +16594,45 @@ "value": "MDTKN" } ], - "id": 1802, + "id": 2050, "kind": "baseConstructorSpecifier", "modifierName": { - "id": 1799, + "id": 2047, "name": "ERC721", "nodeType": "IdentifierPath", "referencedDeclaration": 865, - "src": "409:6:11" + "src": "409:6:135" }, "nodeType": "ModifierInvocation", - "src": "409:32:11" + "src": "409:32:135" } ], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { - "id": 1798, + "id": 2046, "nodeType": "ParameterList", "parameters": [], - "src": "406:2:11" + "src": "406:2:135" }, "returnParameters": { - "id": 1803, + "id": 2051, "nodeType": "ParameterList", "parameters": [], - "src": "442:0:11" + "src": "442:0:135" }, - "scope": 1839, - "src": "395:49:11", + "scope": 2087, + "src": "395:49:135", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" }, { "body": { - "id": 1837, + "id": 2085, "nodeType": "Block", - "src": "555:195:11", + "src": "555:195:135", "statements": [ { "expression": { @@ -16640,18 +16640,18 @@ "expression": { "argumentTypes": [], "expression": { - "id": 1814, + "id": 2062, "name": "_tokenIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "565:9:11", + "referencedDeclaration": 2045, + "src": "565:9:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 1816, + "id": 2064, "isConstant": false, "isLValue": true, "isPure": false, @@ -16659,13 +16659,13 @@ "memberName": "increment", "nodeType": "MemberAccess", "referencedDeclaration": 1503, - "src": "565:19:11", + "src": "565:19:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Counter_$1477_storage_ptr_$returns$__$bound_to$_t_struct$_Counter_$1477_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer)" } }, - "id": 1817, + "id": 2065, "isConstant": false, "isLValue": false, "isPure": false, @@ -16673,31 +16673,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "565:21:11", + "src": "565:21:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1818, + "id": 2066, "nodeType": "ExpressionStatement", - "src": "565:21:11" + "src": "565:21:135" }, { "assignments": [ - 1820 + 2068 ], "declarations": [ { "constant": false, - "id": 1820, + "id": 2068, "mutability": "mutable", "name": "newItemId", - "nameLocation": "605:9:11", + "nameLocation": "605:9:135", "nodeType": "VariableDeclaration", - "scope": 1837, - "src": "597:17:11", + "scope": 2085, + "src": "597:17:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16705,10 +16705,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1819, + "id": 2067, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "597:7:11", + "src": "597:7:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16717,24 +16717,24 @@ "visibility": "internal" } ], - "id": 1824, + "id": 2072, "initialValue": { "arguments": [], "expression": { "argumentTypes": [], "expression": { - "id": 1821, + "id": 2069, "name": "_tokenIds", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "617:9:11", + "referencedDeclaration": 2045, + "src": "617:9:135", "typeDescriptions": { "typeIdentifier": "t_struct$_Counter_$1477_storage", "typeString": "struct Counters.Counter storage ref" } }, - "id": 1822, + "id": 2070, "isConstant": false, "isLValue": true, "isPure": false, @@ -16742,13 +16742,13 @@ "memberName": "current", "nodeType": "MemberAccess", "referencedDeclaration": 1489, - "src": "617:17:11", + "src": "617:17:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_struct$_Counter_$1477_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Counter_$1477_storage_ptr_$", "typeString": "function (struct Counters.Counter storage pointer) view returns (uint256)" } }, - "id": 1823, + "id": 2071, "isConstant": false, "isLValue": false, "isPure": false, @@ -16756,7 +16756,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "617:19:11", + "src": "617:19:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", @@ -16764,30 +16764,30 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "597:39:11" + "src": "597:39:135" }, { "expression": { "arguments": [ { - "id": 1826, + "id": 2074, "name": "recipient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1807, - "src": "652:9:11", + "referencedDeclaration": 2055, + "src": "652:9:135", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { - "id": 1827, + "id": 2075, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "663:9:11", + "referencedDeclaration": 2068, + "src": "663:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16805,18 +16805,18 @@ "typeString": "uint256" } ], - "id": 1825, + "id": 2073, "name": "_mint", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 589, - "src": "646:5:11", + "src": "646:5:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 1828, + "id": 2076, "isConstant": false, "isLValue": false, "isPure": false, @@ -16824,39 +16824,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "646:27:11", + "src": "646:27:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1829, + "id": 2077, "nodeType": "ExpressionStatement", - "src": "646:27:11" + "src": "646:27:135" }, { "expression": { "arguments": [ { - "id": 1831, + "id": 2079, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "696:9:11", + "referencedDeclaration": 2068, + "src": "696:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, { - "id": 1832, + "id": 2080, "name": "tokenURI", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1809, - "src": "707:8:11", + "referencedDeclaration": 2057, + "src": "707:8:135", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -16874,18 +16874,18 @@ "typeString": "string memory" } ], - "id": 1830, + "id": 2078, "name": "_setTokenURI", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1096, - "src": "683:12:11", + "src": "683:12:135", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$", "typeString": "function (uint256,string memory)" } }, - "id": 1833, + "id": 2081, "isConstant": false, "isLValue": false, "isPure": false, @@ -16893,58 +16893,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "683:33:11", + "src": "683:33:135", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1834, + "id": 2082, "nodeType": "ExpressionStatement", - "src": "683:33:11" + "src": "683:33:135" }, { "expression": { - "id": 1835, + "id": 2083, "name": "newItemId", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "734:9:11", + "referencedDeclaration": 2068, + "src": "734:9:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1813, - "id": 1836, + "functionReturnParameters": 2061, + "id": 2084, "nodeType": "Return", - "src": "727:16:11" + "src": "727:16:135" } ] }, "functionSelector": "eacabe14", - "id": 1838, + "id": 2086, "implemented": true, "kind": "function", "modifiers": [], "name": "mintNFT", - "nameLocation": "459:7:11", + "nameLocation": "459:7:135", "nodeType": "FunctionDefinition", "parameters": { - "id": 1810, + "id": 2058, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1807, + "id": 2055, "mutability": "mutable", "name": "recipient", - "nameLocation": "475:9:11", + "nameLocation": "475:9:135", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "467:17:11", + "scope": 2086, + "src": "467:17:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16952,10 +16952,10 @@ "typeString": "address" }, "typeName": { - "id": 1806, + "id": 2054, "name": "address", "nodeType": "ElementaryTypeName", - "src": "467:7:11", + "src": "467:7:135", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", @@ -16966,13 +16966,13 @@ }, { "constant": false, - "id": 1809, + "id": 2057, "mutability": "mutable", "name": "tokenURI", - "nameLocation": "500:8:11", + "nameLocation": "500:8:135", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "486:22:11", + "scope": 2086, + "src": "486:22:135", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { @@ -16980,10 +16980,10 @@ "typeString": "string" }, "typeName": { - "id": 1808, + "id": 2056, "name": "string", "nodeType": "ElementaryTypeName", - "src": "486:6:11", + "src": "486:6:135", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -16992,21 +16992,21 @@ "visibility": "internal" } ], - "src": "466:43:11" + "src": "466:43:135" }, "returnParameters": { - "id": 1813, + "id": 2061, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1812, + "id": 2060, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", - "scope": 1838, - "src": "542:7:11", + "scope": 2086, + "src": "542:7:135", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17014,10 +17014,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1811, + "id": 2059, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "542:7:11", + "src": "542:7:135", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17026,21 +17026,21 @@ "visibility": "internal" } ], - "src": "541:9:11" + "src": "541:9:135" }, - "scope": 1839, - "src": "450:300:11", + "scope": 2087, + "src": "450:300:135", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" } ], - "scope": 1840, - "src": "261:491:11", + "scope": 2088, + "src": "261:491:135", "usedErrors": [] } ], - "src": "103:650:11" + "src": "103:650:135" }, "compiler": { "name": "solc", @@ -17050,12 +17050,12 @@ "5777": { "events": {}, "links": {}, - "address": "0xb9ae679Ce79806Db9ED54f6399b3a6ddf50A9dBd", - "transactionHash": "0x23ff8884f0806e92bcfcde7758c5579830c2ac8b43a282022debfff5e6a44f33" + "address": "0xf51E45828FE28f7B9983A7C8A0b6c3D7595B0745", + "transactionHash": "0x211214d1664133788e79111b6c342e18461e15169eeae064c62586f0d90c1e44" } }, "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:12.622Z", + "updatedAt": "2022-04-30T22:06:17.975Z", "networkType": "ethereum", "devdoc": { "kind": "dev", diff --git a/src/abis/Migrations.json b/src/abis/Migrations.json deleted file mode 100644 index 999f8ed..0000000 --- a/src/abis/Migrations.json +++ /dev/null @@ -1,3168 +0,0 @@ -{ - "contractName": "Migrations", - "abi": [ - { - "inputs": [], - "name": "last_completed_migration", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function", - "constant": true - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "completed", - "type": "uint256" - } - ], - "name": "setCompleted", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "new_address", - "type": "address" - } - ], - "name": "upgrade", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"last_completed_migration\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"completed\",\"type\":\"uint256\"}],\"name\":\"setCompleted\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"new_address\",\"type\":\"address\"}],\"name\":\"upgrade\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/src/contracts/Migrations.sol\":\"Migrations\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/src/contracts/Migrations.sol\":{\"keccak256\":\"0xa33ca3256f307777f9029d9a38aedbb81166d5846840ab2dd4d5f5e39c0a442a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07d907f93c6ea5689261f0ba6ed773bc5e4557863115b7b3f4310e4fc103438f\",\"dweb:/ipfs/QmcauUKey4WWSTX3x47irb8Um66pJ7sA6Gvz7K7YH7cBq2\"]}},\"version\":1}", - "bytecode": "0x6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801561005057600080fd5b506104ab806100606000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630900f01014610051578063445df0ac1461006d5780638da5cb5b1461008b578063fdacd576146100a9575b600080fd5b61006b600480360381019061006691906102ee565b6100c5565b005b6100756101c9565b6040516100829190610334565b60405180910390f35b6100936101cf565b6040516100a0919061035e565b60405180910390f35b6100c360048036038101906100be91906103a5565b6101f3565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014a90610455565b60405180910390fd5b60008190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff1660e01b81526004016101939190610334565b600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b60015481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610281576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027890610455565b60405180910390fd5b8060018190555050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102bb82610290565b9050919050565b6102cb816102b0565b81146102d657600080fd5b50565b6000813590506102e8816102c2565b92915050565b6000602082840312156103045761030361028b565b5b6000610312848285016102d9565b91505092915050565b6000819050919050565b61032e8161031b565b82525050565b60006020820190506103496000830184610325565b92915050565b610358816102b0565b82525050565b6000602082019050610373600083018461034f565b92915050565b6103828161031b565b811461038d57600080fd5b50565b60008135905061039f81610379565b92915050565b6000602082840312156103bb576103ba61028b565b5b60006103c984828501610390565b91505092915050565b600082825260208201905092915050565b7f546869732066756e6374696f6e206973207265737472696374656420746f207460008201527f686520636f6e74726163742773206f776e657200000000000000000000000000602082015250565b600061043f6033836103d2565b915061044a826103e3565b604082019050919050565b6000602082019050818103600083015261046e81610432565b905091905056fea2646970667358221220b266594408bf72e2effa3e985505556acddcb7093bd3e5356f51c95a60438aae64736f6c634300080d0033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80630900f01014610051578063445df0ac1461006d5780638da5cb5b1461008b578063fdacd576146100a9575b600080fd5b61006b600480360381019061006691906102ee565b6100c5565b005b6100756101c9565b6040516100829190610334565b60405180910390f35b6100936101cf565b6040516100a0919061035e565b60405180910390f35b6100c360048036038101906100be91906103a5565b6101f3565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161014a90610455565b60405180910390fd5b60008190508073ffffffffffffffffffffffffffffffffffffffff1663fdacd5766001546040518263ffffffff1660e01b81526004016101939190610334565b600060405180830381600087803b1580156101ad57600080fd5b505af11580156101c1573d6000803e3d6000fd5b505050505050565b60015481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610281576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027890610455565b60405180910390fd5b8060018190555050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006102bb82610290565b9050919050565b6102cb816102b0565b81146102d657600080fd5b50565b6000813590506102e8816102c2565b92915050565b6000602082840312156103045761030361028b565b5b6000610312848285016102d9565b91505092915050565b6000819050919050565b61032e8161031b565b82525050565b60006020820190506103496000830184610325565b92915050565b610358816102b0565b82525050565b6000602082019050610373600083018461034f565b92915050565b6103828161031b565b811461038d57600080fd5b50565b60008135905061039f81610379565b92915050565b6000602082840312156103bb576103ba61028b565b5b60006103c984828501610390565b91505092915050565b600082825260208201905092915050565b7f546869732066756e6374696f6e206973207265737472696374656420746f207460008201527f686520636f6e74726163742773206f776e657200000000000000000000000000602082015250565b600061043f6033836103d2565b915061044a826103e3565b604082019050919050565b6000602082019050818103600083015261046e81610432565b905091905056fea2646970667358221220b266594408bf72e2effa3e985505556acddcb7093bd3e5356f51c95a60438aae64736f6c634300080d0033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [ - { - "ast": { - "nodeType": "YulBlock", - "src": "0:3784:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "47:35:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "57:19:13", - "value": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "73:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "mload", - "nodeType": "YulIdentifier", - "src": "67:5:13" - }, - "nodeType": "YulFunctionCall", - "src": "67:9:13" - }, - "variableNames": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "57:6:13" - } - ] - } - ] - }, - "name": "allocate_unbounded", - "nodeType": "YulFunctionDefinition", - "returnVariables": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "40:6:13", - "type": "" - } - ], - "src": "7:75:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "177:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "194:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "197:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "187:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "187:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "187:12:13" - } - ] - }, - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulFunctionDefinition", - "src": "88:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "300:28:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "317:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "320:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "310:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "310:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "310:12:13" - } - ] - }, - "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", - "nodeType": "YulFunctionDefinition", - "src": "211:117:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "379:81:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "389:65:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "404:5:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "411:42:13", - "type": "", - "value": "0xffffffffffffffffffffffffffffffffffffffff" - } - ], - "functionName": { - "name": "and", - "nodeType": "YulIdentifier", - "src": "400:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "400:54:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "389:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_uint160", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "361:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "371:7:13", - "type": "" - } - ], - "src": "334:126:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "511:51:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "521:35:13", - "value": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "550:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint160", - "nodeType": "YulIdentifier", - "src": "532:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "532:24:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "521:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "493:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "503:7:13", - "type": "" - } - ], - "src": "466:96:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "611:79:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "668:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "677:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "680:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "670:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "670:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "670:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "634:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "659:5:13" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "641:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "641:24:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "631:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "631:35:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "624:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "624:43:13" - }, - "nodeType": "YulIf", - "src": "621:63:13" - } - ] - }, - "name": "validator_revert_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "604:5:13", - "type": "" - } - ], - "src": "568:122:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "748:87:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "758:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "780:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "767:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "767:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "758:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "823:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_address", - "nodeType": "YulIdentifier", - "src": "796:26:13" - }, - "nodeType": "YulFunctionCall", - "src": "796:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "796:33:13" - } - ] - }, - "name": "abi_decode_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "726:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "734:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "742:5:13", - "type": "" - } - ], - "src": "696:139:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "907:263:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "953:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "955:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "955:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "955:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "928:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "937:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "924:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "924:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "949:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "920:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "920:32:13" - }, - "nodeType": "YulIf", - "src": "917:119:13" - }, - { - "nodeType": "YulBlock", - "src": "1046:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "1061:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1075:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "1065:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "1090:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1125:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "1136:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1121:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1121:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "1145:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_address", - "nodeType": "YulIdentifier", - "src": "1100:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "1100:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1090:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_address", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "877:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "888:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "900:6:13", - "type": "" - } - ], - "src": "841:329:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1221:32:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1231:16:13", - "value": { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1242:5:13" - }, - "variableNames": [ - { - "name": "cleaned", - "nodeType": "YulIdentifier", - "src": "1231:7:13" - } - ] - } - ] - }, - "name": "cleanup_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1203:5:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "cleaned", - "nodeType": "YulTypedName", - "src": "1213:7:13", - "type": "" - } - ], - "src": "1176:77:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1324:53:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1341:3:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1364:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "1346:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "1346:24:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1334:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1334:37:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1334:37:13" - } - ] - }, - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1312:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1319:3:13", - "type": "" - } - ], - "src": "1259:118:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1481:124:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1491:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1503:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1514:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1499:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1499:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1491:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1571:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1584:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1595:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1580:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1580:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_uint256_to_t_uint256_fromStack", - "nodeType": "YulIdentifier", - "src": "1527:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "1527:71:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1527:71:13" - } - ] - }, - "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1453:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1465:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1476:4:13", - "type": "" - } - ], - "src": "1383:222:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1676:53:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "1693:3:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "1716:5:13" - } - ], - "functionName": { - "name": "cleanup_t_address", - "nodeType": "YulIdentifier", - "src": "1698:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "1698:24:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "1686:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "1686:37:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1686:37:13" - } - ] - }, - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1664:5:13", - "type": "" - }, - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "1671:3:13", - "type": "" - } - ], - "src": "1611:118:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "1833:124:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "1843:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1855:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1866:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1851:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1851:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "1843:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "1923:6:13" - }, - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "1936:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "1947:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "1932:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "1932:17:13" - } - ], - "functionName": { - "name": "abi_encode_t_address_to_t_address_fromStack", - "nodeType": "YulIdentifier", - "src": "1879:43:13" - }, - "nodeType": "YulFunctionCall", - "src": "1879:71:13" - }, - "nodeType": "YulExpressionStatement", - "src": "1879:71:13" - } - ] - }, - "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "1805:9:13", - "type": "" - }, - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "1817:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "1828:4:13", - "type": "" - } - ], - "src": "1735:222:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2006:79:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2063:16:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2072:1:13", - "type": "", - "value": "0" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2075:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "revert", - "nodeType": "YulIdentifier", - "src": "2065:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2065:12:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2065:12:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2029:5:13" - }, - { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2054:5:13" - } - ], - "functionName": { - "name": "cleanup_t_uint256", - "nodeType": "YulIdentifier", - "src": "2036:17:13" - }, - "nodeType": "YulFunctionCall", - "src": "2036:24:13" - } - ], - "functionName": { - "name": "eq", - "nodeType": "YulIdentifier", - "src": "2026:2:13" - }, - "nodeType": "YulFunctionCall", - "src": "2026:35:13" - } - ], - "functionName": { - "name": "iszero", - "nodeType": "YulIdentifier", - "src": "2019:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2019:43:13" - }, - "nodeType": "YulIf", - "src": "2016:63:13" - } - ] - }, - "name": "validator_revert_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "1999:5:13", - "type": "" - } - ], - "src": "1963:122:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2143:87:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "2153:29:13", - "value": { - "arguments": [ - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2175:6:13" - } - ], - "functionName": { - "name": "calldataload", - "nodeType": "YulIdentifier", - "src": "2162:12:13" - }, - "nodeType": "YulFunctionCall", - "src": "2162:20:13" - }, - "variableNames": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2153:5:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "value", - "nodeType": "YulIdentifier", - "src": "2218:5:13" - } - ], - "functionName": { - "name": "validator_revert_t_uint256", - "nodeType": "YulIdentifier", - "src": "2191:26:13" - }, - "nodeType": "YulFunctionCall", - "src": "2191:33:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2191:33:13" - } - ] - }, - "name": "abi_decode_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2121:6:13", - "type": "" - }, - { - "name": "end", - "nodeType": "YulTypedName", - "src": "2129:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value", - "nodeType": "YulTypedName", - "src": "2137:5:13", - "type": "" - } - ], - "src": "2091:139:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2302:263:13", - "statements": [ - { - "body": { - "nodeType": "YulBlock", - "src": "2348:83:13", - "statements": [ - { - "expression": { - "arguments": [], - "functionName": { - "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", - "nodeType": "YulIdentifier", - "src": "2350:77:13" - }, - "nodeType": "YulFunctionCall", - "src": "2350:79:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2350:79:13" - } - ] - }, - "condition": { - "arguments": [ - { - "arguments": [ - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2323:7:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2332:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "2319:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2319:23:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2344:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "slt", - "nodeType": "YulIdentifier", - "src": "2315:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2315:32:13" - }, - "nodeType": "YulIf", - "src": "2312:119:13" - }, - { - "nodeType": "YulBlock", - "src": "2441:117:13", - "statements": [ - { - "nodeType": "YulVariableDeclaration", - "src": "2456:15:13", - "value": { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2470:1:13", - "type": "", - "value": "0" - }, - "variables": [ - { - "name": "offset", - "nodeType": "YulTypedName", - "src": "2460:6:13", - "type": "" - } - ] - }, - { - "nodeType": "YulAssignment", - "src": "2485:63:13", - "value": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "2520:9:13" - }, - { - "name": "offset", - "nodeType": "YulIdentifier", - "src": "2531:6:13" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2516:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2516:22:13" - }, - { - "name": "dataEnd", - "nodeType": "YulIdentifier", - "src": "2540:7:13" - } - ], - "functionName": { - "name": "abi_decode_t_uint256", - "nodeType": "YulIdentifier", - "src": "2495:20:13" - }, - "nodeType": "YulFunctionCall", - "src": "2495:53:13" - }, - "variableNames": [ - { - "name": "value0", - "nodeType": "YulIdentifier", - "src": "2485:6:13" - } - ] - } - ] - } - ] - }, - "name": "abi_decode_tuple_t_uint256", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "2272:9:13", - "type": "" - }, - { - "name": "dataEnd", - "nodeType": "YulTypedName", - "src": "2283:7:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "value0", - "nodeType": "YulTypedName", - "src": "2295:6:13", - "type": "" - } - ], - "src": "2236:329:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2667:73:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2684:3:13" - }, - { - "name": "length", - "nodeType": "YulIdentifier", - "src": "2689:6:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2677:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2677:19:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2677:19:13" - }, - { - "nodeType": "YulAssignment", - "src": "2705:29:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "2724:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2729:4:13", - "type": "", - "value": "0x20" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2720:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2720:14:13" - }, - "variableNames": [ - { - "name": "updated_pos", - "nodeType": "YulIdentifier", - "src": "2705:11:13" - } - ] - } - ] - }, - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "2639:3:13", - "type": "" - }, - { - "name": "length", - "nodeType": "YulTypedName", - "src": "2644:6:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "updated_pos", - "nodeType": "YulTypedName", - "src": "2655:11:13", - "type": "" - } - ], - "src": "2571:169:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "2852:132:13", - "statements": [ - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2874:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2882:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2870:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2870:14:13" - }, - { - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2886:34:13", - "type": "", - "value": "This function is restricted to t" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2863:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2863:58:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2863:58:13" - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "memPtr", - "nodeType": "YulIdentifier", - "src": "2942:6:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "2950:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "2938:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "2938:15:13" - }, - { - "hexValue": "686520636f6e74726163742773206f776e6572", - "kind": "string", - "nodeType": "YulLiteral", - "src": "2955:21:13", - "type": "", - "value": "he contract's owner" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "2931:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "2931:46:13" - }, - "nodeType": "YulExpressionStatement", - "src": "2931:46:13" - } - ] - }, - "name": "store_literal_in_memory_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "memPtr", - "nodeType": "YulTypedName", - "src": "2844:6:13", - "type": "" - } - ], - "src": "2746:238:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3136:220:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3146:74:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3212:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3217:2:13", - "type": "", - "value": "51" - } - ], - "functionName": { - "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "3153:58:13" - }, - "nodeType": "YulFunctionCall", - "src": "3153:67:13" - }, - "variableNames": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3146:3:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3318:3:13" - } - ], - "functionName": { - "name": "store_literal_in_memory_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "nodeType": "YulIdentifier", - "src": "3229:88:13" - }, - "nodeType": "YulFunctionCall", - "src": "3229:93:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3229:93:13" - }, - { - "nodeType": "YulAssignment", - "src": "3331:19:13", - "value": { - "arguments": [ - { - "name": "pos", - "nodeType": "YulIdentifier", - "src": "3342:3:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3347:2:13", - "type": "", - "value": "64" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3338:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3338:12:13" - }, - "variableNames": [ - { - "name": "end", - "nodeType": "YulIdentifier", - "src": "3331:3:13" - } - ] - } - ] - }, - "name": "abi_encode_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1_to_t_string_memory_ptr_fromStack", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "pos", - "nodeType": "YulTypedName", - "src": "3124:3:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "end", - "nodeType": "YulTypedName", - "src": "3132:3:13", - "type": "" - } - ], - "src": "2990:366:13" - }, - { - "body": { - "nodeType": "YulBlock", - "src": "3533:248:13", - "statements": [ - { - "nodeType": "YulAssignment", - "src": "3543:26:13", - "value": { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3555:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3566:2:13", - "type": "", - "value": "32" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3551:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3551:18:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3543:4:13" - } - ] - }, - { - "expression": { - "arguments": [ - { - "arguments": [ - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3590:9:13" - }, - { - "kind": "number", - "nodeType": "YulLiteral", - "src": "3601:1:13", - "type": "", - "value": "0" - } - ], - "functionName": { - "name": "add", - "nodeType": "YulIdentifier", - "src": "3586:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3586:17:13" - }, - { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3609:4:13" - }, - { - "name": "headStart", - "nodeType": "YulIdentifier", - "src": "3615:9:13" - } - ], - "functionName": { - "name": "sub", - "nodeType": "YulIdentifier", - "src": "3605:3:13" - }, - "nodeType": "YulFunctionCall", - "src": "3605:20:13" - } - ], - "functionName": { - "name": "mstore", - "nodeType": "YulIdentifier", - "src": "3579:6:13" - }, - "nodeType": "YulFunctionCall", - "src": "3579:47:13" - }, - "nodeType": "YulExpressionStatement", - "src": "3579:47:13" - }, - { - "nodeType": "YulAssignment", - "src": "3635:139:13", - "value": { - "arguments": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3769:4:13" - } - ], - "functionName": { - "name": "abi_encode_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1_to_t_string_memory_ptr_fromStack", - "nodeType": "YulIdentifier", - "src": "3643:124:13" - }, - "nodeType": "YulFunctionCall", - "src": "3643:131:13" - }, - "variableNames": [ - { - "name": "tail", - "nodeType": "YulIdentifier", - "src": "3635:4:13" - } - ] - } - ] - }, - "name": "abi_encode_tuple_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1__to_t_string_memory_ptr__fromStack_reversed", - "nodeType": "YulFunctionDefinition", - "parameters": [ - { - "name": "headStart", - "nodeType": "YulTypedName", - "src": "3513:9:13", - "type": "" - } - ], - "returnVariables": [ - { - "name": "tail", - "nodeType": "YulTypedName", - "src": "3528:4:13", - "type": "" - } - ], - "src": "3362:419:13" - } - ] - }, - "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_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_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 array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1(memPtr) {\n\n mstore(add(memPtr, 0), \"This function is restricted to t\")\n\n mstore(add(memPtr, 32), \"he contract's owner\")\n\n }\n\n function abi_encode_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 51)\n store_literal_in_memory_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1__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_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", - "id": 13, - "language": "Yul", - "name": "#utility.yul" - } - ], - "sourceMap": "66:579:12:-:0;;;115:10;92:33;;;;;;;;;;;;;;;;;;;;66:579;;;;;;;;;;;;;;;;", - "deployedSourceMap": "66:579:12:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;468:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;131:39;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;92:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;350:112;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;468:175;244:5;;;;;;;;;;230:19;;:10;:19;;;209:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;534:19:::1;567:11;534:45;;589:8;:21;;;611:24;;589:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;524:119;468:175:::0;:::o;131:39::-;;;;:::o;92:33::-;;;;;;;;;;;;:::o;350:112::-;244:5;;;;;;;;;;230:19;;:10;:19;;;209:117;;;;;;;;;;;;:::i;:::-;;;;;;;;;446:9:::1;419:24;:36;;;;350:112:::0;:::o;88:117:13:-;197:1;194;187:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:329::-;900:6;949:2;937:9;928:7;924:23;920:32;917:119;;;955:79;;:::i;:::-;917:119;1075:1;1100:53;1145:7;1136:6;1125:9;1121:22;1100:53;:::i;:::-;1090:63;;1046:117;841:329;;;;:::o;1176:77::-;1213:7;1242:5;1231:16;;1176:77;;;:::o;1259:118::-;1346:24;1364:5;1346:24;:::i;:::-;1341:3;1334:37;1259:118;;:::o;1383:222::-;1476:4;1514:2;1503:9;1499:18;1491:26;;1527:71;1595:1;1584:9;1580:17;1571:6;1527:71;:::i;:::-;1383:222;;;;:::o;1611:118::-;1698:24;1716:5;1698:24;:::i;:::-;1693:3;1686:37;1611:118;;:::o;1735:222::-;1828:4;1866:2;1855:9;1851:18;1843:26;;1879:71;1947:1;1936:9;1932:17;1923:6;1879:71;:::i;:::-;1735:222;;;;:::o;1963:122::-;2036:24;2054:5;2036:24;:::i;:::-;2029:5;2026:35;2016:63;;2075:1;2072;2065:12;2016:63;1963:122;:::o;2091:139::-;2137:5;2175:6;2162:20;2153:29;;2191:33;2218:5;2191:33;:::i;:::-;2091:139;;;;:::o;2236:329::-;2295:6;2344:2;2332:9;2323:7;2319:23;2315:32;2312:119;;;2350:79;;:::i;:::-;2312:119;2470:1;2495:53;2540:7;2531:6;2520:9;2516:22;2495:53;:::i;:::-;2485:63;;2441:117;2236:329;;;;:::o;2571:169::-;2655:11;2689:6;2684:3;2677:19;2729:4;2724:3;2720:14;2705:29;;2571:169;;;;:::o;2746:238::-;2886:34;2882:1;2874:6;2870:14;2863:58;2955:21;2950:2;2942:6;2938:15;2931:46;2746:238;:::o;2990:366::-;3132:3;3153:67;3217:2;3212:3;3153:67;:::i;:::-;3146:74;;3229:93;3318:3;3229:93;:::i;:::-;3347:2;3342:3;3338:12;3331:19;;2990:366;;;:::o;3362:419::-;3528:4;3566:2;3555:9;3551:18;3543:26;;3615:9;3609:4;3605:20;3601:1;3590:9;3586:17;3579:47;3643:131;3769:4;3643:131;:::i;:::-;3635:139;;3362:419;;;:::o", - "source": "// SPDX-License-Identifier: MIT\npragma solidity >=0.4.22 <0.9.0;\n\ncontract Migrations {\n address public owner = msg.sender;\n uint256 public last_completed_migration;\n\n modifier restricted() {\n require(\n msg.sender == owner,\n \"This function is restricted to the contract's owner\"\n );\n _;\n }\n\n function setCompleted(uint256 completed) public restricted {\n last_completed_migration = completed;\n }\n\n function upgrade(address new_address) public restricted {\n Migrations upgraded = Migrations(new_address);\n upgraded.setCompleted(last_completed_migration);\n }\n}\n", - "sourcePath": "/Users/gabriel/Github/metadevs/1-repositorios/metadevs-nft-minter/src/contracts/Migrations.sol", - "ast": { - "absolutePath": "project:/src/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 1893 - ] - }, - "id": 1894, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1841, - "literals": [ - "solidity", - ">=", - "0.4", - ".22", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:32:12" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Migrations", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1893, - "linearizedBaseContracts": [ - 1893 - ], - "name": "Migrations", - "nameLocation": "75:10:12", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "8da5cb5b", - "id": 1845, - "mutability": "mutable", - "name": "owner", - "nameLocation": "107:5:12", - "nodeType": "VariableDeclaration", - "scope": 1893, - "src": "92:33:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1842, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "92:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "expression": { - "id": 1843, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "115:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "115:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "445df0ac", - "id": 1847, - "mutability": "mutable", - "name": "last_completed_migration", - "nameLocation": "146:24:12", - "nodeType": "VariableDeclaration", - "scope": 1893, - "src": "131:39:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1846, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "131:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 1858, - "nodeType": "Block", - "src": "199:145:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1853, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1850, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "230:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "230:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1852, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1845, - "src": "244:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "230:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 1854, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "263:53:12", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - }, - "value": "This function is restricted to the contract's owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - } - ], - "id": 1849, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "209:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "209:117:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1856, - "nodeType": "ExpressionStatement", - "src": "209:117:12" - }, - { - "id": 1857, - "nodeType": "PlaceholderStatement", - "src": "336:1:12" - } - ] - }, - "id": 1859, - "name": "restricted", - "nameLocation": "186:10:12", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1848, - "nodeType": "ParameterList", - "parameters": [], - "src": "196:2:12" - }, - "src": "177:167:12", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1870, - "nodeType": "Block", - "src": "409:53:12", - "statements": [ - { - "expression": { - "id": 1868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1866, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1847, - "src": "419:24:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1867, - "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1861, - "src": "446:9:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "419:36:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1869, - "nodeType": "ExpressionStatement", - "src": "419:36:12" - } - ] - }, - "functionSelector": "fdacd576", - "id": 1871, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1864, - "kind": "modifierInvocation", - "modifierName": { - "id": 1863, - "name": "restricted", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1859, - "src": "398:10:12" - }, - "nodeType": "ModifierInvocation", - "src": "398:10:12" - } - ], - "name": "setCompleted", - "nameLocation": "359:12:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1861, - "mutability": "mutable", - "name": "completed", - "nameLocation": "380:9:12", - "nodeType": "VariableDeclaration", - "scope": 1871, - "src": "372:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1860, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "372:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "371:19:12" - }, - "returnParameters": { - "id": 1865, - "nodeType": "ParameterList", - "parameters": [], - "src": "409:0:12" - }, - "scope": 1893, - "src": "350:112:12", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1891, - "nodeType": "Block", - "src": "524:119:12", - "statements": [ - { - "assignments": [ - 1880 - ], - "declarations": [ - { - "constant": false, - "id": 1880, - "mutability": "mutable", - "name": "upgraded", - "nameLocation": "545:8:12", - "nodeType": "VariableDeclaration", - "scope": 1891, - "src": "534:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - }, - "typeName": { - "id": 1879, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1878, - "name": "Migrations", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1893, - "src": "534:10:12" - }, - "referencedDeclaration": 1893, - "src": "534:10:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "visibility": "internal" - } - ], - "id": 1884, - "initialValue": { - "arguments": [ - { - "id": 1882, - "name": "new_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "567:11:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1881, - "name": "Migrations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1893, - "src": "556:10:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Migrations_$1893_$", - "typeString": "type(contract Migrations)" - } - }, - "id": 1883, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "556:23:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "534:45:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1888, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1847, - "src": "611:24:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1885, - "name": "upgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1880, - "src": "589:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "id": 1887, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "setCompleted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1871, - "src": "589:21:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 1889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "589:47:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1890, - "nodeType": "ExpressionStatement", - "src": "589:47:12" - } - ] - }, - "functionSelector": "0900f010", - "id": 1892, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1876, - "kind": "modifierInvocation", - "modifierName": { - "id": 1875, - "name": "restricted", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1859, - "src": "513:10:12" - }, - "nodeType": "ModifierInvocation", - "src": "513:10:12" - } - ], - "name": "upgrade", - "nameLocation": "477:7:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "mutability": "mutable", - "name": "new_address", - "nameLocation": "493:11:12", - "nodeType": "VariableDeclaration", - "scope": 1892, - "src": "485:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1872, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "485:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "484:21:12" - }, - "returnParameters": { - "id": 1877, - "nodeType": "ParameterList", - "parameters": [], - "src": "524:0:12" - }, - "scope": 1893, - "src": "468:175:12", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "scope": 1894, - "src": "66:579:12", - "usedErrors": [] - } - ], - "src": "32:614:12" - }, - "legacyAST": { - "absolutePath": "project:/src/contracts/Migrations.sol", - "exportedSymbols": { - "Migrations": [ - 1893 - ] - }, - "id": 1894, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1841, - "literals": [ - "solidity", - ">=", - "0.4", - ".22", - "<", - "0.9", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "32:32:12" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Migrations", - "contractDependencies": [], - "contractKind": "contract", - "fullyImplemented": true, - "id": 1893, - "linearizedBaseContracts": [ - 1893 - ], - "name": "Migrations", - "nameLocation": "75:10:12", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "functionSelector": "8da5cb5b", - "id": 1845, - "mutability": "mutable", - "name": "owner", - "nameLocation": "107:5:12", - "nodeType": "VariableDeclaration", - "scope": 1893, - "src": "92:33:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1842, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "92:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": { - "expression": { - "id": 1843, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "115:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1844, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "115:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "public" - }, - { - "constant": false, - "functionSelector": "445df0ac", - "id": 1847, - "mutability": "mutable", - "name": "last_completed_migration", - "nameLocation": "146:24:12", - "nodeType": "VariableDeclaration", - "scope": 1893, - "src": "131:39:12", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1846, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "131:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "public" - }, - { - "body": { - "id": 1858, - "nodeType": "Block", - "src": "199:145:12", - "statements": [ - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "id": 1853, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "expression": { - "id": 1850, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 4294967281, - "src": "230:3:12", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1851, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "src": "230:10:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "id": 1852, - "name": "owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1845, - "src": "244:5:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "230:19:12", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "546869732066756e6374696f6e206973207265737472696374656420746f2074686520636f6e74726163742773206f776e6572", - "id": 1854, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "263:53:12", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - }, - "value": "This function is restricted to the contract's owner" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_f60fe2d9d123295bf92ecf95167f1fa709e374da35e4c083bd39dc2d82acd8b1", - "typeString": "literal_string \"This function is restricted to the contract's owner\"" - } - ], - "id": 1849, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "209:7:12", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1855, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "209:117:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1856, - "nodeType": "ExpressionStatement", - "src": "209:117:12" - }, - { - "id": 1857, - "nodeType": "PlaceholderStatement", - "src": "336:1:12" - } - ] - }, - "id": 1859, - "name": "restricted", - "nameLocation": "186:10:12", - "nodeType": "ModifierDefinition", - "parameters": { - "id": 1848, - "nodeType": "ParameterList", - "parameters": [], - "src": "196:2:12" - }, - "src": "177:167:12", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1870, - "nodeType": "Block", - "src": "409:53:12", - "statements": [ - { - "expression": { - "id": 1868, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1866, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1847, - "src": "419:24:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "id": 1867, - "name": "completed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1861, - "src": "446:9:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "419:36:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1869, - "nodeType": "ExpressionStatement", - "src": "419:36:12" - } - ] - }, - "functionSelector": "fdacd576", - "id": 1871, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1864, - "kind": "modifierInvocation", - "modifierName": { - "id": 1863, - "name": "restricted", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1859, - "src": "398:10:12" - }, - "nodeType": "ModifierInvocation", - "src": "398:10:12" - } - ], - "name": "setCompleted", - "nameLocation": "359:12:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1862, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1861, - "mutability": "mutable", - "name": "completed", - "nameLocation": "380:9:12", - "nodeType": "VariableDeclaration", - "scope": 1871, - "src": "372:17:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1860, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "372:7:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "371:19:12" - }, - "returnParameters": { - "id": 1865, - "nodeType": "ParameterList", - "parameters": [], - "src": "409:0:12" - }, - "scope": 1893, - "src": "350:112:12", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - }, - { - "body": { - "id": 1891, - "nodeType": "Block", - "src": "524:119:12", - "statements": [ - { - "assignments": [ - 1880 - ], - "declarations": [ - { - "constant": false, - "id": 1880, - "mutability": "mutable", - "name": "upgraded", - "nameLocation": "545:8:12", - "nodeType": "VariableDeclaration", - "scope": 1891, - "src": "534:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - }, - "typeName": { - "id": 1879, - "nodeType": "UserDefinedTypeName", - "pathNode": { - "id": 1878, - "name": "Migrations", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1893, - "src": "534:10:12" - }, - "referencedDeclaration": 1893, - "src": "534:10:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "visibility": "internal" - } - ], - "id": 1884, - "initialValue": { - "arguments": [ - { - "id": 1882, - "name": "new_address", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1873, - "src": "567:11:12", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - } - ], - "id": 1881, - "name": "Migrations", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1893, - "src": "556:10:12", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Migrations_$1893_$", - "typeString": "type(contract Migrations)" - } - }, - "id": 1883, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "556:23:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "534:45:12" - }, - { - "expression": { - "arguments": [ - { - "id": 1888, - "name": "last_completed_migration", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1847, - "src": "611:24:12", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "expression": { - "id": 1885, - "name": "upgraded", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1880, - "src": "589:8:12", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Migrations_$1893", - "typeString": "contract Migrations" - } - }, - "id": 1887, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "setCompleted", - "nodeType": "MemberAccess", - "referencedDeclaration": 1871, - "src": "589:21:12", - "typeDescriptions": { - "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", - "typeString": "function (uint256) external" - } - }, - "id": 1889, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "589:47:12", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1890, - "nodeType": "ExpressionStatement", - "src": "589:47:12" - } - ] - }, - "functionSelector": "0900f010", - "id": 1892, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "id": 1876, - "kind": "modifierInvocation", - "modifierName": { - "id": 1875, - "name": "restricted", - "nodeType": "IdentifierPath", - "referencedDeclaration": 1859, - "src": "513:10:12" - }, - "nodeType": "ModifierInvocation", - "src": "513:10:12" - } - ], - "name": "upgrade", - "nameLocation": "477:7:12", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1874, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1873, - "mutability": "mutable", - "name": "new_address", - "nameLocation": "493:11:12", - "nodeType": "VariableDeclaration", - "scope": 1892, - "src": "485:19:12", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1872, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "485:7:12", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "visibility": "internal" - } - ], - "src": "484:21:12" - }, - "returnParameters": { - "id": 1877, - "nodeType": "ParameterList", - "parameters": [], - "src": "524:0:12" - }, - "scope": 1893, - "src": "468:175:12", - "stateMutability": "nonpayable", - "virtual": false, - "visibility": "public" - } - ], - "scope": 1894, - "src": "66:579:12", - "usedErrors": [] - } - ], - "src": "32:614:12" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": { - "5777": { - "events": {}, - "links": {}, - "address": "0x6C6143e05928F99a3D52b70659F60AB7e03D7f5E", - "transactionHash": "0x2478b776acc99d87cad929a91c6f36b3f8e1e411ec883008e2c97970ff5946ae" - } - }, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:12.631Z", - "networkType": "ethereum", - "devdoc": { - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/abis/Strings.json b/src/abis/Strings.json deleted file mode 100644 index a1fbe9e..0000000 --- a/src/abis/Strings.json +++ /dev/null @@ -1,5128 +0,0 @@ -{ - "contractName": "Strings", - "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.8.13+commit.abaa5c0e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"String operations.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/utils/Strings.sol\":\"Strings\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/utils/Strings.sol\":{\"keccak256\":\"0x32c202bd28995dd20c4347b7c6467a6d3241c74c8ad3edcbb610cd9205916c45\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8179c356adb19e70d6b31a1eedc8c5c7f0c00e669e2540f4099e3844c6074d30\",\"dweb:/ipfs/QmWFbivarEobbqhS1go64ootVuHfVohBseerYy9FTEd1W2\"]}},\"version\":1}", - "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ff3f46967c3073caf32f56f8ade32c659a6fb3efc57a43fa16bae5471858928c64736f6c634300080d0033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ff3f46967c3073caf32f56f8ade32c659a6fb3efc57a43fa16bae5471858928c64736f6c634300080d0033", - "immutableReferences": {}, - "generatedSources": [], - "deployedGeneratedSources": [], - "sourceMap": "146:1885:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", - "deployedSourceMap": "146:1885:8:-:0;;;;;;;;", - "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.4.1 (utils/Strings.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev String operations.\n */\nlibrary Strings {\n bytes16 private constant _HEX_SYMBOLS = \"0123456789abcdef\";\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` decimal representation.\n */\n function toString(uint256 value) internal pure returns (string memory) {\n // Inspired by OraclizeAPI's implementation - MIT licence\n // https://github.com/oraclize/ethereum-api/blob/b42146b063c7d6ee1358846c198246239e9360e8/oraclizeAPI_0.4.25.sol\n\n if (value == 0) {\n return \"0\";\n }\n uint256 temp = value;\n uint256 digits;\n while (temp != 0) {\n digits++;\n temp /= 10;\n }\n bytes memory buffer = new bytes(digits);\n while (value != 0) {\n digits -= 1;\n buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));\n value /= 10;\n }\n return string(buffer);\n }\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation.\n */\n function toHexString(uint256 value) internal pure returns (string memory) {\n if (value == 0) {\n return \"0x00\";\n }\n uint256 temp = value;\n uint256 length = 0;\n while (temp != 0) {\n length++;\n temp >>= 8;\n }\n return toHexString(value, length);\n }\n\n /**\n * @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length.\n */\n function toHexString(uint256 value, uint256 length) internal pure returns (string memory) {\n bytes memory buffer = new bytes(2 * length + 2);\n buffer[0] = \"0\";\n buffer[1] = \"x\";\n for (uint256 i = 2 * length + 1; i > 1; --i) {\n buffer[i] = _HEX_SYMBOLS[value & 0xf];\n value >>= 4;\n }\n require(value == 0, \"Strings: hex length insufficient\");\n return string(buffer);\n }\n}\n", - "sourcePath": "@openzeppelin/contracts/utils/Strings.sol", - "ast": { - "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", - "exportedSymbols": { - "Strings": [ - 1748 - ] - }, - "id": 1749, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1547, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "86:23:8" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Strings", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1548, - "nodeType": "StructuredDocumentation", - "src": "111:34:8", - "text": " @dev String operations." - }, - "fullyImplemented": true, - "id": 1748, - "linearizedBaseContracts": [ - 1748 - ], - "name": "Strings", - "nameLocation": "154:7:8", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 1551, - "mutability": "constant", - "name": "_HEX_SYMBOLS", - "nameLocation": "193:12:8", - "nodeType": "VariableDeclaration", - "scope": 1748, - "src": "168:58:8", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - }, - "typeName": { - "id": 1549, - "name": "bytes16", - "nodeType": "ElementaryTypeName", - "src": "168:7:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - } - }, - "value": { - "hexValue": "30313233343536373839616263646566", - "id": 1550, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "208:18:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", - "typeString": "literal_string \"0123456789abcdef\"" - }, - "value": "0123456789abcdef" - }, - "visibility": "private" - }, - { - "body": { - "id": 1629, - "nodeType": "Block", - "src": "399:632:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1559, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "601:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1560, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "610:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "601:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1565, - "nodeType": "IfStatement", - "src": "597:51:8", - "trueBody": { - "id": 1564, - "nodeType": "Block", - "src": "613:35:8", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 1562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "634:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "functionReturnParameters": 1558, - "id": 1563, - "nodeType": "Return", - "src": "627:10:8" - } - ] - } - }, - { - "assignments": [ - 1567 - ], - "declarations": [ - { - "constant": false, - "id": 1567, - "mutability": "mutable", - "name": "temp", - "nameLocation": "665:4:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "657:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1566, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "657:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1569, - "initialValue": { - "id": 1568, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "672:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "657:20:8" - }, - { - "assignments": [ - 1571 - ], - "declarations": [ - { - "constant": false, - "id": 1571, - "mutability": "mutable", - "name": "digits", - "nameLocation": "695:6:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "687:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1570, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "687:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1572, - "nodeType": "VariableDeclarationStatement", - "src": "687:14:8" - }, - { - "body": { - "id": 1583, - "nodeType": "Block", - "src": "729:57:8", - "statements": [ - { - "expression": { - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "743:8:8", - "subExpression": { - "id": 1576, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "743:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1578, - "nodeType": "ExpressionStatement", - "src": "743:8:8" - }, - { - "expression": { - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1579, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "765:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "/=", - "rightHandSide": { - "hexValue": "3130", - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "773:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "765:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "765:10:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1573, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "718:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "726:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "718:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1584, - "nodeType": "WhileStatement", - "src": "711:75:8" - }, - { - "assignments": [ - 1586 - ], - "declarations": [ - { - "constant": false, - "id": 1586, - "mutability": "mutable", - "name": "buffer", - "nameLocation": "808:6:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "795:19:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1585, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "795:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1591, - "initialValue": { - "arguments": [ - { - "id": 1589, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "827:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "817:9:8", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 1587, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "821:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "817:17:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "795:39:8" - }, - { - "body": { - "id": 1622, - "nodeType": "Block", - "src": "863:131:8", - "statements": [ - { - "expression": { - "id": 1597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1595, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "877:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "887:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "877:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1598, - "nodeType": "ExpressionStatement", - "src": "877:11:8" - }, - { - "expression": { - "id": 1616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1599, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1586, - "src": "902:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1601, - "indexExpression": { - "id": 1600, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "909:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "902:14:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3438", - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "932:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_48_by_1", - "typeString": "int_const 48" - }, - "value": "48" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1609, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "945:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "hexValue": "3130", - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "953:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "945:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "937:7:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 1607, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "937:7:8", - "typeDescriptions": {} - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "937:19:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "932:24:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "926:5:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 1604, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "926:5:8", - "typeDescriptions": {} - } - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "926:31:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 1603, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "919:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes1_$", - "typeString": "type(bytes1)" - }, - "typeName": { - "id": 1602, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "919:6:8", - "typeDescriptions": {} - } - }, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "919:39:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "902:56:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1617, - "nodeType": "ExpressionStatement", - "src": "902:56:8" - }, - { - "expression": { - "id": 1620, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1618, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "972:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "/=", - "rightHandSide": { - "hexValue": "3130", - "id": 1619, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "981:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "972:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1621, - "nodeType": "ExpressionStatement", - "src": "972:11:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1592, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "851:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1593, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "860:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "851:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1623, - "nodeType": "WhileStatement", - "src": "844:150:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1626, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1586, - "src": "1017:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1625, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1010:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1624, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1010:6:8", - "typeDescriptions": {} - } - }, - "id": 1627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1010:14:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1558, - "id": 1628, - "nodeType": "Return", - "src": "1003:21:8" - } - ] - }, - "documentation": { - "id": 1552, - "nodeType": "StructuredDocumentation", - "src": "233:90:8", - "text": " @dev Converts a `uint256` to its ASCII `string` decimal representation." - }, - "id": 1630, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toString", - "nameLocation": "337:8:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1555, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1554, - "mutability": "mutable", - "name": "value", - "nameLocation": "354:5:8", - "nodeType": "VariableDeclaration", - "scope": 1630, - "src": "346:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1553, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "346:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "345:15:8" - }, - "returnParameters": { - "id": 1558, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1557, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1630, - "src": "384:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1556, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "384:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "383:15:8" - }, - "scope": 1748, - "src": "328:703:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1670, - "nodeType": "Block", - "src": "1210:255:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1638, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1224:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1639, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1233:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1224:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1644, - "nodeType": "IfStatement", - "src": "1220:54:8", - "trueBody": { - "id": 1643, - "nodeType": "Block", - "src": "1236:38:8", - "statements": [ - { - "expression": { - "hexValue": "30783030", - "id": 1641, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1257:6:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_27489e20a0060b723a1748bdff5e44570ee9fae64141728105692eac6031e8a4", - "typeString": "literal_string \"0x00\"" - }, - "value": "0x00" - }, - "functionReturnParameters": 1637, - "id": 1642, - "nodeType": "Return", - "src": "1250:13:8" - } - ] - } - }, - { - "assignments": [ - 1646 - ], - "declarations": [ - { - "constant": false, - "id": 1646, - "mutability": "mutable", - "name": "temp", - "nameLocation": "1291:4:8", - "nodeType": "VariableDeclaration", - "scope": 1670, - "src": "1283:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1645, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1283:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1648, - "initialValue": { - "id": 1647, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1298:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1283:20:8" - }, - { - "assignments": [ - 1650 - ], - "declarations": [ - { - "constant": false, - "id": 1650, - "mutability": "mutable", - "name": "length", - "nameLocation": "1321:6:8", - "nodeType": "VariableDeclaration", - "scope": 1670, - "src": "1313:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1649, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1313:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1652, - "initialValue": { - "hexValue": "30", - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1330:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1313:18:8" - }, - { - "body": { - "id": 1663, - "nodeType": "Block", - "src": "1359:57:8", - "statements": [ - { - "expression": { - "id": 1657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1373:8:8", - "subExpression": { - "id": 1656, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1650, - "src": "1373:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1658, - "nodeType": "ExpressionStatement", - "src": "1373:8:8" - }, - { - "expression": { - "id": 1661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1659, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1395:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": ">>=", - "rightHandSide": { - "hexValue": "38", - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1404:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "src": "1395:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1662, - "nodeType": "ExpressionStatement", - "src": "1395:10:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1653, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1348:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1654, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1356:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1348:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1664, - "nodeType": "WhileStatement", - "src": "1341:75:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1666, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1444:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1667, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1650, - "src": "1451:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1665, - "name": "toHexString", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1671, - 1747 - ], - "referencedDeclaration": 1747, - "src": "1432:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$", - "typeString": "function (uint256,uint256) pure returns (string memory)" - } - }, - "id": 1668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1432:26:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1637, - "id": 1669, - "nodeType": "Return", - "src": "1425:33:8" - } - ] - }, - "documentation": { - "id": 1631, - "nodeType": "StructuredDocumentation", - "src": "1037:94:8", - "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation." - }, - "id": 1671, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toHexString", - "nameLocation": "1145:11:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1634, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1633, - "mutability": "mutable", - "name": "value", - "nameLocation": "1165:5:8", - "nodeType": "VariableDeclaration", - "scope": 1671, - "src": "1157:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1632, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1157:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1156:15:8" - }, - "returnParameters": { - "id": 1637, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1636, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1671, - "src": "1195:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1635, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1195:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1194:15:8" - }, - "scope": 1748, - "src": "1136:329:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1746, - "nodeType": "Block", - "src": "1678:351:8", - "statements": [ - { - "assignments": [ - 1682 - ], - "declarations": [ - { - "constant": false, - "id": 1682, - "mutability": "mutable", - "name": "buffer", - "nameLocation": "1701:6:8", - "nodeType": "VariableDeclaration", - "scope": 1746, - "src": "1688:19:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1681, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1688:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1691, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1687, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 1685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1720:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 1686, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1676, - "src": "1724:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1720:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "32", - "id": 1688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1733:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1720:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1684, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1710:9:8", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 1683, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1714:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 1690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1710:25:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1688:47:8" - }, - { - "expression": { - "id": 1696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1692, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1745:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1694, - "indexExpression": { - "hexValue": "30", - "id": 1693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1752:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1745:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 1695, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1757:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "src": "1745:15:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1697, - "nodeType": "ExpressionStatement", - "src": "1745:15:8" - }, - { - "expression": { - "id": 1702, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1698, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1770:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1700, - "indexExpression": { - "hexValue": "31", - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1777:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1770:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "78", - "id": 1701, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1782:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", - "typeString": "literal_string \"x\"" - }, - "value": "x" - }, - "src": "1770:15:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1703, - "nodeType": "ExpressionStatement", - "src": "1770:15:8" - }, - { - "body": { - "id": 1732, - "nodeType": "Block", - "src": "1840:87:8", - "statements": [ - { - "expression": { - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1718, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1854:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1720, - "indexExpression": { - "id": 1719, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1861:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1854:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1721, - "name": "_HEX_SYMBOLS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "1866:12:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - } - }, - "id": 1725, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1722, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1879:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "&", - "rightExpression": { - "hexValue": "307866", - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1887:3:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_15_by_1", - "typeString": "int_const 15" - }, - "value": "0xf" - }, - "src": "1879:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1866:25:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "1854:37:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1727, - "nodeType": "ExpressionStatement", - "src": "1854:37:8" - }, - { - "expression": { - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1728, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1905:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": ">>=", - "rightHandSide": { - "hexValue": "34", - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1915:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "1905:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1731, - "nodeType": "ExpressionStatement", - "src": "1905:11:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1712, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1828:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "31", - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1832:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1828:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1733, - "initializationExpression": { - "assignments": [ - 1705 - ], - "declarations": [ - { - "constant": false, - "id": 1705, - "mutability": "mutable", - "name": "i", - "nameLocation": "1808:1:8", - "nodeType": "VariableDeclaration", - "scope": 1733, - "src": "1800:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1704, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1800:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1711, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1708, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 1706, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1812:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 1707, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1676, - "src": "1816:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1812:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 1709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1825:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1812:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1800:26:8" - }, - "loopExpression": { - "expression": { - "id": 1716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "--", - "prefix": true, - "src": "1835:3:8", - "subExpression": { - "id": 1715, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1837:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1717, - "nodeType": "ExpressionStatement", - "src": "1835:3:8" - }, - "nodeType": "ForStatement", - "src": "1795:132:8" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1735, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1944:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1953:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1944:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "537472696e67733a20686578206c656e67746820696e73756666696369656e74", - "id": 1738, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1956:34:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", - "typeString": "literal_string \"Strings: hex length insufficient\"" - }, - "value": "Strings: hex length insufficient" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", - "typeString": "literal_string \"Strings: hex length insufficient\"" - } - ], - "id": 1734, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1936:7:8", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1936:55:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1740, - "nodeType": "ExpressionStatement", - "src": "1936:55:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1743, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "2015:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1742, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2008:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1741, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2008:6:8", - "typeDescriptions": {} - } - }, - "id": 1744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2008:14:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1680, - "id": 1745, - "nodeType": "Return", - "src": "2001:21:8" - } - ] - }, - "documentation": { - "id": 1672, - "nodeType": "StructuredDocumentation", - "src": "1471:112:8", - "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length." - }, - "id": 1747, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toHexString", - "nameLocation": "1597:11:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1677, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1674, - "mutability": "mutable", - "name": "value", - "nameLocation": "1617:5:8", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1609:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1673, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1609:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1676, - "mutability": "mutable", - "name": "length", - "nameLocation": "1632:6:8", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1624:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1675, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1624:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1608:31:8" - }, - "returnParameters": { - "id": 1680, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1679, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1663:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1678, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1663:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1662:15:8" - }, - "scope": 1748, - "src": "1588:441:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1749, - "src": "146:1885:8", - "usedErrors": [] - } - ], - "src": "86:1946:8" - }, - "legacyAST": { - "absolutePath": "@openzeppelin/contracts/utils/Strings.sol", - "exportedSymbols": { - "Strings": [ - 1748 - ] - }, - "id": 1749, - "license": "MIT", - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1547, - "literals": [ - "solidity", - "^", - "0.8", - ".0" - ], - "nodeType": "PragmaDirective", - "src": "86:23:8" - }, - { - "abstract": false, - "baseContracts": [], - "canonicalName": "Strings", - "contractDependencies": [], - "contractKind": "library", - "documentation": { - "id": 1548, - "nodeType": "StructuredDocumentation", - "src": "111:34:8", - "text": " @dev String operations." - }, - "fullyImplemented": true, - "id": 1748, - "linearizedBaseContracts": [ - 1748 - ], - "name": "Strings", - "nameLocation": "154:7:8", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 1551, - "mutability": "constant", - "name": "_HEX_SYMBOLS", - "nameLocation": "193:12:8", - "nodeType": "VariableDeclaration", - "scope": 1748, - "src": "168:58:8", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - }, - "typeName": { - "id": 1549, - "name": "bytes16", - "nodeType": "ElementaryTypeName", - "src": "168:7:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - } - }, - "value": { - "hexValue": "30313233343536373839616263646566", - "id": 1550, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "208:18:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", - "typeString": "literal_string \"0123456789abcdef\"" - }, - "value": "0123456789abcdef" - }, - "visibility": "private" - }, - { - "body": { - "id": 1629, - "nodeType": "Block", - "src": "399:632:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1559, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "601:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1560, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "610:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "601:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1565, - "nodeType": "IfStatement", - "src": "597:51:8", - "trueBody": { - "id": 1564, - "nodeType": "Block", - "src": "613:35:8", - "statements": [ - { - "expression": { - "hexValue": "30", - "id": 1562, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "634:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "functionReturnParameters": 1558, - "id": 1563, - "nodeType": "Return", - "src": "627:10:8" - } - ] - } - }, - { - "assignments": [ - 1567 - ], - "declarations": [ - { - "constant": false, - "id": 1567, - "mutability": "mutable", - "name": "temp", - "nameLocation": "665:4:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "657:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1566, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "657:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1569, - "initialValue": { - "id": 1568, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "672:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "657:20:8" - }, - { - "assignments": [ - 1571 - ], - "declarations": [ - { - "constant": false, - "id": 1571, - "mutability": "mutable", - "name": "digits", - "nameLocation": "695:6:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "687:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1570, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "687:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1572, - "nodeType": "VariableDeclarationStatement", - "src": "687:14:8" - }, - { - "body": { - "id": 1583, - "nodeType": "Block", - "src": "729:57:8", - "statements": [ - { - "expression": { - "id": 1577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "743:8:8", - "subExpression": { - "id": 1576, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "743:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1578, - "nodeType": "ExpressionStatement", - "src": "743:8:8" - }, - { - "expression": { - "id": 1581, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1579, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "765:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "/=", - "rightHandSide": { - "hexValue": "3130", - "id": 1580, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "773:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "765:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1582, - "nodeType": "ExpressionStatement", - "src": "765:10:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1575, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1573, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1567, - "src": "718:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1574, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "726:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "718:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1584, - "nodeType": "WhileStatement", - "src": "711:75:8" - }, - { - "assignments": [ - 1586 - ], - "declarations": [ - { - "constant": false, - "id": 1586, - "mutability": "mutable", - "name": "buffer", - "nameLocation": "808:6:8", - "nodeType": "VariableDeclaration", - "scope": 1629, - "src": "795:19:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1585, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "795:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1591, - "initialValue": { - "arguments": [ - { - "id": 1589, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "827:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1588, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "817:9:8", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 1587, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "821:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 1590, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "817:17:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "795:39:8" - }, - { - "body": { - "id": 1622, - "nodeType": "Block", - "src": "863:131:8", - "statements": [ - { - "expression": { - "id": 1597, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1595, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "877:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "hexValue": "31", - "id": 1596, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "887:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "877:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1598, - "nodeType": "ExpressionStatement", - "src": "877:11:8" - }, - { - "expression": { - "id": 1616, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1599, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1586, - "src": "902:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1601, - "indexExpression": { - "id": 1600, - "name": "digits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1571, - "src": "909:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "902:14:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "arguments": [ - { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1613, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "3438", - "id": 1606, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "932:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_48_by_1", - "typeString": "int_const 48" - }, - "value": "48" - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1609, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "945:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "%", - "rightExpression": { - "hexValue": "3130", - "id": 1610, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "953:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "945:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1608, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "937:7:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint256_$", - "typeString": "type(uint256)" - }, - "typeName": { - "id": 1607, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "937:7:8", - "typeDescriptions": {} - } - }, - "id": 1612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "937:19:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "932:24:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1605, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "926:5:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_uint8_$", - "typeString": "type(uint8)" - }, - "typeName": { - "id": 1604, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "926:5:8", - "typeDescriptions": {} - } - }, - "id": 1614, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "926:31:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - ], - "id": 1603, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "919:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes1_$", - "typeString": "type(bytes1)" - }, - "typeName": { - "id": 1602, - "name": "bytes1", - "nodeType": "ElementaryTypeName", - "src": "919:6:8", - "typeDescriptions": {} - } - }, - "id": 1615, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "919:39:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "902:56:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1617, - "nodeType": "ExpressionStatement", - "src": "902:56:8" - }, - { - "expression": { - "id": 1620, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1618, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "972:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "/=", - "rightHandSide": { - "hexValue": "3130", - "id": 1619, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "981:2:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_10_by_1", - "typeString": "int_const 10" - }, - "value": "10" - }, - "src": "972:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1621, - "nodeType": "ExpressionStatement", - "src": "972:11:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1594, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1592, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "851:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1593, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "860:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "851:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1623, - "nodeType": "WhileStatement", - "src": "844:150:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1626, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1586, - "src": "1017:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1625, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "1010:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1624, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1010:6:8", - "typeDescriptions": {} - } - }, - "id": 1627, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1010:14:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1558, - "id": 1628, - "nodeType": "Return", - "src": "1003:21:8" - } - ] - }, - "documentation": { - "id": 1552, - "nodeType": "StructuredDocumentation", - "src": "233:90:8", - "text": " @dev Converts a `uint256` to its ASCII `string` decimal representation." - }, - "id": 1630, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toString", - "nameLocation": "337:8:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1555, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1554, - "mutability": "mutable", - "name": "value", - "nameLocation": "354:5:8", - "nodeType": "VariableDeclaration", - "scope": 1630, - "src": "346:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1553, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "346:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "345:15:8" - }, - "returnParameters": { - "id": 1558, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1557, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1630, - "src": "384:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1556, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "384:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "383:15:8" - }, - "scope": 1748, - "src": "328:703:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1670, - "nodeType": "Block", - "src": "1210:255:8", - "statements": [ - { - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1640, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1638, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1224:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1639, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1233:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1224:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1644, - "nodeType": "IfStatement", - "src": "1220:54:8", - "trueBody": { - "id": 1643, - "nodeType": "Block", - "src": "1236:38:8", - "statements": [ - { - "expression": { - "hexValue": "30783030", - "id": 1641, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1257:6:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_27489e20a0060b723a1748bdff5e44570ee9fae64141728105692eac6031e8a4", - "typeString": "literal_string \"0x00\"" - }, - "value": "0x00" - }, - "functionReturnParameters": 1637, - "id": 1642, - "nodeType": "Return", - "src": "1250:13:8" - } - ] - } - }, - { - "assignments": [ - 1646 - ], - "declarations": [ - { - "constant": false, - "id": 1646, - "mutability": "mutable", - "name": "temp", - "nameLocation": "1291:4:8", - "nodeType": "VariableDeclaration", - "scope": 1670, - "src": "1283:12:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1645, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1283:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1648, - "initialValue": { - "id": 1647, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1298:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1283:20:8" - }, - { - "assignments": [ - 1650 - ], - "declarations": [ - { - "constant": false, - "id": 1650, - "mutability": "mutable", - "name": "length", - "nameLocation": "1321:6:8", - "nodeType": "VariableDeclaration", - "scope": 1670, - "src": "1313:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1649, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1313:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1652, - "initialValue": { - "hexValue": "30", - "id": 1651, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1330:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "1313:18:8" - }, - { - "body": { - "id": 1663, - "nodeType": "Block", - "src": "1359:57:8", - "statements": [ - { - "expression": { - "id": 1657, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "1373:8:8", - "subExpression": { - "id": 1656, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1650, - "src": "1373:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1658, - "nodeType": "ExpressionStatement", - "src": "1373:8:8" - }, - { - "expression": { - "id": 1661, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1659, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1395:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": ">>=", - "rightHandSide": { - "hexValue": "38", - "id": 1660, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1404:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_8_by_1", - "typeString": "int_const 8" - }, - "value": "8" - }, - "src": "1395:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1662, - "nodeType": "ExpressionStatement", - "src": "1395:10:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1655, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1653, - "name": "temp", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1646, - "src": "1348:4:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "!=", - "rightExpression": { - "hexValue": "30", - "id": 1654, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1356:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1348:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1664, - "nodeType": "WhileStatement", - "src": "1341:75:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1666, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1633, - "src": "1444:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "id": 1667, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1650, - "src": "1451:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1665, - "name": "toHexString", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1671, - 1747 - ], - "referencedDeclaration": 1747, - "src": "1432:11:8", - "typeDescriptions": { - "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_string_memory_ptr_$", - "typeString": "function (uint256,uint256) pure returns (string memory)" - } - }, - "id": 1668, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1432:26:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1637, - "id": 1669, - "nodeType": "Return", - "src": "1425:33:8" - } - ] - }, - "documentation": { - "id": 1631, - "nodeType": "StructuredDocumentation", - "src": "1037:94:8", - "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation." - }, - "id": 1671, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toHexString", - "nameLocation": "1145:11:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1634, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1633, - "mutability": "mutable", - "name": "value", - "nameLocation": "1165:5:8", - "nodeType": "VariableDeclaration", - "scope": 1671, - "src": "1157:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1632, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1157:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1156:15:8" - }, - "returnParameters": { - "id": 1637, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1636, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1671, - "src": "1195:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1635, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1195:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1194:15:8" - }, - "scope": 1748, - "src": "1136:329:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - }, - { - "body": { - "id": 1746, - "nodeType": "Block", - "src": "1678:351:8", - "statements": [ - { - "assignments": [ - 1682 - ], - "declarations": [ - { - "constant": false, - "id": 1682, - "mutability": "mutable", - "name": "buffer", - "nameLocation": "1701:6:8", - "nodeType": "VariableDeclaration", - "scope": 1746, - "src": "1688:19:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1681, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1688:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "visibility": "internal" - } - ], - "id": 1691, - "initialValue": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1689, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1687, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 1685, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1720:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 1686, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1676, - "src": "1724:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1720:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "32", - "id": 1688, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1733:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "1720:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 1684, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "NewExpression", - "src": "1710:9:8", - "typeDescriptions": { - "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", - "typeString": "function (uint256) pure returns (bytes memory)" - }, - "typeName": { - "id": 1683, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "1714:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - } - }, - "id": 1690, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1710:25:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1688:47:8" - }, - { - "expression": { - "id": 1696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1692, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1745:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1694, - "indexExpression": { - "hexValue": "30", - "id": 1693, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1752:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1745:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "30", - "id": 1695, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1757:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", - "typeString": "literal_string \"0\"" - }, - "value": "0" - }, - "src": "1745:15:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1697, - "nodeType": "ExpressionStatement", - "src": "1745:15:8" - }, - { - "expression": { - "id": 1702, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1698, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1770:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1700, - "indexExpression": { - "hexValue": "31", - "id": 1699, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1777:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1770:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "hexValue": "78", - "id": 1701, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1782:3:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83", - "typeString": "literal_string \"x\"" - }, - "value": "x" - }, - "src": "1770:15:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1703, - "nodeType": "ExpressionStatement", - "src": "1770:15:8" - }, - { - "body": { - "id": 1732, - "nodeType": "Block", - "src": "1840:87:8", - "statements": [ - { - "expression": { - "id": 1726, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "baseExpression": { - "id": 1718, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "1854:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - }, - "id": 1720, - "indexExpression": { - "id": 1719, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1861:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1854:9:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "baseExpression": { - "id": 1721, - "name": "_HEX_SYMBOLS", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "1866:12:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes16", - "typeString": "bytes16" - } - }, - "id": 1725, - "indexExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1724, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1722, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1879:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "&", - "rightExpression": { - "hexValue": "307866", - "id": 1723, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1887:3:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_15_by_1", - "typeString": "int_const 15" - }, - "value": "0xf" - }, - "src": "1879:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1866:25:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "src": "1854:37:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes1", - "typeString": "bytes1" - } - }, - "id": 1727, - "nodeType": "ExpressionStatement", - "src": "1854:37:8" - }, - { - "expression": { - "id": 1730, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "id": 1728, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1905:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": ">>=", - "rightHandSide": { - "hexValue": "34", - "id": 1729, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1915:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_4_by_1", - "typeString": "int_const 4" - }, - "value": "4" - }, - "src": "1905:11:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1731, - "nodeType": "ExpressionStatement", - "src": "1905:11:8" - } - ] - }, - "condition": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1714, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1712, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1828:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "hexValue": "31", - "id": 1713, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1832:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1828:5:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1733, - "initializationExpression": { - "assignments": [ - 1705 - ], - "declarations": [ - { - "constant": false, - "id": 1705, - "mutability": "mutable", - "name": "i", - "nameLocation": "1808:1:8", - "nodeType": "VariableDeclaration", - "scope": 1733, - "src": "1800:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1704, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1800:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "id": 1711, - "initialValue": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1710, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1708, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "hexValue": "32", - "id": 1706, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1812:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "*", - "rightExpression": { - "id": 1707, - "name": "length", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1676, - "src": "1816:6:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1812:10:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { - "hexValue": "31", - "id": 1709, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1825:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "1812:14:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "1800:26:8" - }, - "loopExpression": { - "expression": { - "id": 1716, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "--", - "prefix": true, - "src": "1835:3:8", - "subExpression": { - "id": 1715, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1705, - "src": "1837:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 1717, - "nodeType": "ExpressionStatement", - "src": "1835:3:8" - }, - "nodeType": "ForStatement", - "src": "1795:132:8" - }, - { - "expression": { - "arguments": [ - { - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "id": 1735, - "name": "value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1674, - "src": "1944:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "hexValue": "30", - "id": 1736, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1953:1:8", - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "1944:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "hexValue": "537472696e67733a20686578206c656e67746820696e73756666696369656e74", - "id": 1738, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1956:34:8", - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", - "typeString": "literal_string \"Strings: hex length insufficient\"" - }, - "value": "Strings: hex length insufficient" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_04fc88320d7c9f639317c75102c103ff0044d3075a5c627e24e76e5bbb2733c2", - "typeString": "literal_string \"Strings: hex length insufficient\"" - } - ], - "id": 1734, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 4294967278, - 4294967278 - ], - "referencedDeclaration": 4294967278, - "src": "1936:7:8", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1739, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1936:55:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1740, - "nodeType": "ExpressionStatement", - "src": "1936:55:8" - }, - { - "expression": { - "arguments": [ - { - "id": 1743, - "name": "buffer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1682, - "src": "2015:6:8", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 1742, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2008:6:8", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_string_storage_ptr_$", - "typeString": "type(string storage pointer)" - }, - "typeName": { - "id": 1741, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2008:6:8", - "typeDescriptions": {} - } - }, - "id": 1744, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2008:14:8", - "tryCall": false, - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "functionReturnParameters": 1680, - "id": 1745, - "nodeType": "Return", - "src": "2001:21:8" - } - ] - }, - "documentation": { - "id": 1672, - "nodeType": "StructuredDocumentation", - "src": "1471:112:8", - "text": " @dev Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length." - }, - "id": 1747, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "toHexString", - "nameLocation": "1597:11:8", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1677, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1674, - "mutability": "mutable", - "name": "value", - "nameLocation": "1617:5:8", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1609:13:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1673, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1609:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 1676, - "mutability": "mutable", - "name": "length", - "nameLocation": "1632:6:8", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1624:14:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1675, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1624:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "visibility": "internal" - } - ], - "src": "1608:31:8" - }, - "returnParameters": { - "id": 1680, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1679, - "mutability": "mutable", - "name": "", - "nameLocation": "-1:-1:-1", - "nodeType": "VariableDeclaration", - "scope": 1747, - "src": "1663:13:8", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 1678, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "1663:6:8", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "visibility": "internal" - } - ], - "src": "1662:15:8" - }, - "scope": 1748, - "src": "1588:441:8", - "stateMutability": "pure", - "virtual": false, - "visibility": "internal" - } - ], - "scope": 1749, - "src": "146:1885:8", - "usedErrors": [] - } - ], - "src": "86:1946:8" - }, - "compiler": { - "name": "solc", - "version": "0.8.13+commit.abaa5c0e.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "3.4.3", - "updatedAt": "2022-05-01T15:41:04.006Z", - "devdoc": { - "details": "String operations.", - "kind": "dev", - "methods": {}, - "version": 1 - }, - "userdoc": { - "kind": "user", - "methods": {}, - "version": 1 - } -} \ No newline at end of file diff --git a/src/contracts/MetadevsContract.sol b/src/contracts/MetadevsContract.sol index 0e42f48..3c8f44a 100644 --- a/src/contracts/MetadevsContract.sol +++ b/src/contracts/MetadevsContract.sol @@ -6,21 +6,5 @@ import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol"; import "@openzeppelin/contracts/utils/Counters.sol"; contract MetadevsContract is ERC721URIStorage { - using Counters for Counters.Counter; - Counters.Counter private _tokenIds; - constructor() ERC721("MetadevsToken", "MDTKN") {} - - function mintNFT(address recipient, string memory tokenURI) - public - returns (uint256) - { - _tokenIds.increment(); - - uint256 newItemId = _tokenIds.current(); - _mint(recipient, newItemId); - _setTokenURI(newItemId, tokenURI); - - return newItemId; - } } diff --git a/src/contracts/Migrations.sol b/src/contracts/Migrations.sol index 69c8f20..b7b8db0 100644 --- a/src/contracts/Migrations.sol +++ b/src/contracts/Migrations.sol @@ -1,24 +1,4 @@ // SPDX-License-Identifier: MIT pragma solidity >=0.4.22 <0.9.0; -contract Migrations { - address public owner = msg.sender; - uint256 public last_completed_migration; - - modifier restricted() { - require( - msg.sender == owner, - "This function is restricted to the contract's owner" - ); - _; - } - - function setCompleted(uint256 completed) public restricted { - last_completed_migration = completed; - } - - function upgrade(address new_address) public restricted { - Migrations upgraded = Migrations(new_address); - upgraded.setCompleted(last_completed_migration); - } -} +contract Migrations {} diff --git a/src/pages/minter/index.js b/src/pages/minter/index.js index 4ae5fec..5e900e6 100644 --- a/src/pages/minter/index.js +++ b/src/pages/minter/index.js @@ -5,8 +5,6 @@ import Fox from "../../components/fox"; import "./style.css"; // Import das funções utilitárias e de interação com o piñata -import { connectWallet, mintNFT } from "../../utils/interact.js"; -import { pinIMAGEtoIPFS } from "../../utils/pinata"; const FormData = require("form-data"); @@ -15,8 +13,6 @@ const Minter = () => { // e informações da carteira do usuário const [isConnected, setConnectedStatus] = useState(false); const [walletAddress, setWallet] = useState(""); - const [status, setStatus] = useState(""); - const [error, setError] = useState(null); // Variáveis do Formulário const [releaseName, setReleaseName] = useState(""); const [artwork, setArtwork] = useState(""); @@ -29,93 +25,18 @@ const Minter = () => { // Função que é executada assim que o código é executado (ex: quando a página // é aberta no navegador) - useEffect(async () => { - if (window.ethereum) { - // Se a Metamask está instalada no navegador - try { - const accounts = await window.ethereum.request({ - method: "eth_accounts", - }); // Retornando o endereço da Metamask - if (accounts.length) { - // Metamask conectada: iremos definir o valor da carteira - setConnectedStatus(true); - setWallet(accounts[0]); - } else { - // Metamask não conectada: iremos solicitar ao usuário que conecte-se na Metamask - setConnectedStatus(false); - setStatus( - "Conecte sua carteira da Metamask clicando no botão no topo à direita. " - ); - } - } catch { - // Caso o usuário cancele ou haja qualquer erro durante a request - // para a Metamask retornar a conta do usuário logado (caso verdadeiro) - setConnectedStatus(false); - setStatus( - "Conecte sua carteira da Metamask clicando no botão no topo à direita. " + - walletAddress - ); - } - } else { - // Caso o usuário não tenha a Metamask instalada no navegador - setStatus( - "⚠️ Por favor, instale a Metamask no seu navegador: https://metamask.io/download.html" - ); - } - }); + useEffect(async () => {}); // Função executada quando o usuário clica no botão "conectar carteira" // Essa função irá chamar outra função utilitária (connectWallet) e irá // definir o status e/ou endereço da carteira retornado (caso tudo ocorra bem) - const connectWalletPressed = async () => { - // Obtendo a resposta da função utilitária - const walletResponse = await connectWallet(); - setConnectedStatus(walletResponse.connectedStatus); // Define o valor do status de acordo com a respostada função connectWallet - setStatus(walletResponse.status); - - if (isConnected) { - // Caso o usuário tenha conseguido se conectar, definimos a carteira - setWallet(walletResponse.address); - } - }; + const connectWalletPressed = async () => {}; // Função para quando o usuário for realizar o Mint - const onMintPressed = async () => { - // Passando os parametros para a função utilitária mintNFT - // e definindo o status da resposta - const { status } = await mintNFT(artist, artwork, releaseName); - setStatus(status); - }; + const onMintPressed = async () => {}; // Função executada quando o usuário seleciona uma imagem no formulários - const artworkHandleChange = async (e) => { - // Identificando uma imagem (quando selecionada) nessa var - let selectedFile = e.target.files[0]; - - if (selectedFile) { - // Caso o usuário selecione a imagem, iremos validar se o tipo - // dessa imagem corresponde aos tipos de arquivos aceitos (PNG, GIF e JPG) - if (types.includes(selectedFile.type)) { - // Caso o tipo da imagem selecionada estiver no array de tipos aceitos - data.set("file", selectedFile); // Definindo a imagem na variavel que contém todos os dados do form - - // Convertendo a imagem para IPFS - const pinataUploadResponse = await pinIMAGEtoIPFS(data); - - // Caso o upload da imagem pro pinata dê certo - if (pinataUploadResponse.success) { - // Definindo o Artwork para o da resposta do pinata - setArtwork(pinataUploadResponse.pinataUrl); - setError(null); - } else { - setError(error); - } - } else { - // Caso a imagem não corresponda aos tipos aceitos, retornamos um erro - setError("Por favor, selecione um arquivo PNG, GIF ou JPG"); - } - } - }; + const artworkHandleChange = async (e) => {}; return (
@@ -141,7 +62,7 @@ const Minter = () => { {/* METAMASK FACE INTERATIVA */}
- + {/* */}
@@ -169,7 +90,8 @@ const Minter = () => { {/* ALERTAS */} {/* Alertas de Status */} - {status ? ( + + {/* {status ? (
@@ -177,10 +99,20 @@ const Minter = () => {
- ) : null} + ) : null} */} +
+
+
+ + Olá! Eu sou um exemplo de um alerta. + +
+
+
{/* Alertas de Erros */} - {error ? ( + + {/* {error ? (
@@ -188,7 +120,14 @@ const Minter = () => {
- ) : null} + ) : null} */} +
+
+
+ Olá! Eu sou um exemplo de um erro +
+
+
{/* CARD PRINCIPAL E FORMULÁRIO*/}
diff --git a/src/utils/interact.js b/src/utils/interact.js index c25b52b..6d44a6b 100644 --- a/src/utils/interact.js +++ b/src/utils/interact.js @@ -1,119 +1,12 @@ -import MetadevsContract from "../abis/MetadevsContract.json"; -import { pinJSONToIPFS } from "./pinata.js"; - require("dotenv").config(); + const alchemyKey = process.env.REACT_APP_ALCHEMY_KEY; -const { createAlchemyWeb3 } = require("@alch/alchemy-web3"); -const web3 = createAlchemyWeb3(alchemyKey); // Função para iniciar o contrato de acordo com a ABI -export const loadContract = async () => { - // Retornando os dados da rede pelo ID - const networkData = MetadevsContract.networks["5777"]; // Para um servidor ganache - - const contractABI = MetadevsContract.abi; // Definindo dados da ABI - const contractAddress = networkData.address; // Definindo endereço do contrato a partir das configs de rede da ABI - - if (contractABI && contractAddress) { - // Caso tenhamos a ABI e o Endereço do contrato, instanciamos o contrato no navegador - window.contract = new web3.eth.Contract(contractABI, contractAddress); - - return { - success: true, - contractAddress, // Retornando o endereço do contrato - }; - } else { - // Caso não tenhos as variáveis de ABI e o Endereço do contrato - return { - success: false, - }; - } -}; +export const loadContract = async () => {}; // Função para abrir a opção de conectar carteira na Metamask -export const connectWallet = async () => { - if (window.ethereum) { - // Se a Metamask estiver instalada no navegador - try { - // Inicia o processo de habilitação de uma carteira da Metamask para a nossa aplicação - const address = await window.ethereum.enable(); - const obj = { - // Objeto contendo o endereço da carteira do usuário e os status da operação - connectedStatus: true, - status: "", - address: address, - }; - return obj; - } catch (error) { - // Caso haja algum erro - return { - connectedStatus: false, - status: - "🦊 Conecte sua carteira na Metamask no botão no topo à direita", - }; - } - } else { - return { - connectedStatus: false, - status: - "🦊 Por favor, instale a Metamask no seu navegador: https://metamask.io/download.html", - }; - } -}; +export const connectWallet = async () => {}; // Função para realizar o Mint de um NFTT a partir dos parâmetros -export const mintNFT = async (artist, artwork, name) => { - // Construindo os Metadados - const metadata = new Object(); - metadata.image = artwork; // Arte do Projeto (link do IPFS da imagem) - metadata.name = name; // Nome do Lançamento - metadata.artist = artist; // Nome do Artista - - // Gerando o IPFS a partir de um objeto JSON - const pinataResponse = await pinJSONToIPFS(metadata); - - if (!pinataResponse.success) { - // Caso haja algum erro no processo, iremos retornar um ststus - return { - success: false, - status: "😢 Algo deu errado ao realizar o upload do tokenURI.", - }; - } - - // Armazenando o tokenURI (url do ipfs do objeto JSON que contém os metadados do NFT) - const tokenURI = pinataResponse.pinataUrl; - - // Iniciando contrato e retornando qual o Endereço do Contrato - const { contractAddress } = await loadContract(); - - // Realizando transação no Ethereum e retornando os parâmetros da transação - // obs: iremos utiliza-lo no passo seguinte para retornar a txHash - const transactionParameters = { - to: contractAddress, // Qual o endereço do contrato no qual está recebendo a interação - from: window.ethereum.selectedAddress, // Quem está interagindo com o contrato - data: window.contract.methods - .mintNFT(window.ethereum.selectedAddress, tokenURI) // Chamando a função do nosso SmartContract - .encodeABI(), - }; - - // Retornando a transação realizada via Metamask - try { - // Solicitando qual o hash (txHash) da transação que foi executada - // no passo anterior - const txHash = await window.ethereum.request({ - method: "eth_sendTransaction", - params: [transactionParameters], - }); - return { - // Caso ocorra tudo bem retornamos o hash da transação - success: true, - status: "✅ NFT Mintado com sucesso! txHash: " + txHash, - }; - } catch (error) { - // Caso algo dê errado - return { - success: false, - status: "😥 Algo deu errado: " + error.message, - }; - } -}; +export const mintNFT = async (artist, artwork, name) => {}; diff --git a/src/utils/pinata.js b/src/utils/pinata.js index 926fc4a..1006e35 100644 --- a/src/utils/pinata.js +++ b/src/utils/pinata.js @@ -6,65 +6,7 @@ const bearer = process.env.REACT_APP_BEARER_KEY; const axios = require("axios"); // Função para converter JSON em IPFS -export const pinJSONToIPFS = async (JSONBody) => { - const url = `https://api.pinata.cloud/pinning/pinJSONToIPFS`; - // Realizando uma requisição para a API do piñata para - // transformar um objeto JSON em um IPFS - return axios - .post(url, JSONBody, { - headers: { - pinata_api_key: key, - pinata_secret_api_key: secret, - }, - }) - .then(function (response) { - return { - success: true, - pinataUrl: - "https://gateway.pinata.cloud/ipfs/" + response.data.IpfsHash, - }; - }) - .catch(function (error) { - console.log(error); - return { - success: false, - message: error.message, - }; - }); -}; +export const pinJSONToIPFS = async (JSONBody) => {}; // Função para transformar a imagem da Arte do Projeto em IPFS -export const pinIMAGEtoIPFS = async (JSONBody) => { - const url = `https://api.pinata.cloud/pinning/pinFileToIPFS`; - // Realizando uma requisição para a API do piñata para - // transformar uma imagem em um IPFS - return ( - axios - .post(url, JSONBody, { - maxBodyLength: "Infinity", - headers: { - // Obtendo variáveis de ambiente da nossa conta do piñata - pinata_api_key: key, - pinata_secret_api_key: secret, - }, - }) - // Depois de subir a imagem e obter uma resposta, iremos definir - // algumas variáveis de stado da aplicação definindo o link/hash do - // IPFS gerado - .then(function (response) { - console.log(response); - return { - success: true, - pinataUrl: - "https://gateway.pinata.cloud/ipfs/" + response.data.IpfsHash, - }; - }) - .catch(function (error) { - // Caso algo dê errado, iremos tratar o erro aqui - return { - success: false, - error: "Erro ao realizar upload da Arte do Trabalho", - }; - }) - ); -}; +export const pinIMAGEtoIPFS = async (imageBody) => {}; diff --git a/truffle-config.js b/truffle-config.js deleted file mode 100644 index f27f4f9..0000000 --- a/truffle-config.js +++ /dev/null @@ -1,21 +0,0 @@ -module.exports = { - networks: { - development: { - host: "127.0.0.1", // Localhost - port: 7545, // Port for Ganache - network_id: "*", // Any network - }, - }, - contracts_directory: "./src/contracts", - contracts_build_directory: "./src/abis", // Create JSON files from our Contracts - - compilers: { - solc: { - version: "^0.8.0", // Fetch exact version from solc-bin (default: truffle's version) - optimizer: { - enabled: true, - runs: 200 - }, - } - }, -}; \ No newline at end of file From e732ab76df7b7bb4be0508c142be39517cdb8b91 Mon Sep 17 00:00:00 2001 From: Gabriel Braga <40736818+kevencript@users.noreply.github.com> Date: Sun, 1 May 2022 14:38:34 -0300 Subject: [PATCH 2/3] Update README.md --- README.md | 42 ++++++++++++++++++++++++++++++++++-------- 1 file changed, 34 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 677a49f..453d533 100644 --- a/README.md +++ b/README.md @@ -1,28 +1,46 @@ -# NFT Minter +# NFT Minter (Código Inicial) +

Metadevs www.metadevs.com.br +

+

+ Metadevs www.metadevs.com.br +

Acesse a comunidade Metadevs: https://wwww.metadevs.com.br/ -Esse projeto é uma aplicação web utilizando ReactJs, Alchemy Web3.0, SmartContracts co Solidity & OpenZeppelin além do Truffle & Ganache para realizar os testes em uma Blockchain Ethereum de teste. +Esse projeto é uma aplicação web utilizando ReactJs, Alchemy Web3.0, Piñata, SmartContracts com Solidity & OpenZeppelin além do Truffle & Ganache para realizar os testes em uma Blockchain Ethereum de teste. + +## ATENÇÃO: `Código Inicial do Curso`vs Código completo + +Se você comprou o curso e vai iniciar o projeto desde o início, você deve fazer um clone da branch `codigo-inicial`. Lá estará presente toda a parte estrutural, mas as funções/contratos ainda não estão implementados, e você pode ir construindo de acordo com o curso. + +A versão completa do código encontra-se na branch `main` ## Como iniciar o projeto Dentro do diretório principal, você pode executar: - ### `npm install` Instala todas as dependências do projeto dentro da pasta "node_modules" -### `npm start` -Inicia a aplicação no modo de desenvolvimento.\ -Acesse [http://localhost:3000](http://localhost:3000) para visualizar a página no seu browser. +### `Criar um aquivo .env para as variáveis de ambiente` + +Esse arquivo deve conter as seguintes inforações advindas do Piñata & Alchemy + +``` +REACT_APP_PINATA_KEY = "xxxxxxx" -The page will reload when you make changes.\ -You may also see any lint errors in the console. +REACT_APP_PINATA_SECRET = "xxxxxxxxxxxxxxx" +REACT_APP_BEARER_KEY = "xxxxxxxxxx" + +REACT_APP_ALCHEMY_KEY = "xxxxxxxxxx" +``` + +# ### `truffle migrate` Cria as ABI's do projeto dentro da pasta `src/abis`.\ @@ -32,6 +50,14 @@ Lembrando que para a aplicação rodar corretamente, é necessário ter uma Bloc Tenha mais informações sobre o [Ganache](https://trufflesuite.com/ganache/). +# +### `npm start` + +Inicia a aplicação no modo de desenvolvimento.\ +Acesse [http://localhost:3000](http://localhost:3000) para visualizar a página no seu browser. + +# + ### `truffle console` **Atenção: para acessar os métodos do nosso SmartContract e realizar testes no console do Truffle é necessário rodar um `truffle migrate`.** From 75e1906241b7932452341132d842e2744aa81832 Mon Sep 17 00:00:00 2001 From: Metadevs Brasil Date: Thu, 12 May 2022 22:25:31 -0300 Subject: [PATCH 3/3] feat: final changes --- package-lock.json | 92 +++++++++++++++++++++++++++++++-------- src/pages/minter/index.js | 2 +- 2 files changed, 74 insertions(+), 20 deletions(-) diff --git a/package-lock.json b/package-lock.json index 91dfa91..eb86868 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6517,7 +6517,8 @@ "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "optional": true }, "node_modules/abort-controller": { "version": "3.0.0", @@ -7010,6 +7011,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "optional": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -7019,6 +7021,7 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "optional": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7033,6 +7036,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "optional": true, "dependencies": { "safe-buffer": "~5.1.0" } @@ -9399,6 +9403,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -9682,7 +9687,8 @@ "node_modules/console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "optional": true }, "node_modules/constant-case": { "version": "2.0.0", @@ -10911,7 +10917,8 @@ "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "optional": true }, "node_modules/delimit-stream": { "version": "0.1.0", @@ -14120,6 +14127,7 @@ "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "optional": true, "dependencies": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -14135,6 +14143,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -14143,6 +14152,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, "dependencies": { "number-is-nan": "^1.0.0" }, @@ -14154,6 +14164,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, "dependencies": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -14167,6 +14178,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -14647,7 +14659,8 @@ "node_modules/has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "optional": true }, "node_modules/has-value": { "version": "1.0.0", @@ -15628,7 +15641,8 @@ "node_modules/immediate": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==", + "optional": true }, "node_modules/immer": { "version": "8.0.1", @@ -18413,6 +18427,7 @@ "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", "hasInstallScript": true, + "optional": true, "dependencies": { "abstract-leveldown": "~6.2.1", "napi-macros": "~2.0.0", @@ -18426,6 +18441,7 @@ "version": "6.2.3", "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "optional": true, "dependencies": { "buffer": "^5.5.0", "immediate": "^3.2.3", @@ -18441,6 +18457,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "optional": true, "engines": { "node": ">=6" } @@ -18449,6 +18466,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "optional": true, "dependencies": { "xtend": "^4.0.2" }, @@ -19788,7 +19806,8 @@ "node_modules/napi-macros": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==" + "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", + "optional": true }, "node_modules/native-abort-controller": { "version": "1.0.4", @@ -19918,6 +19937,7 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==", + "optional": true, "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -20178,6 +20198,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "optional": true, "dependencies": { "abbrev": "1", "osenv": "^0.1.4" @@ -22926,6 +22947,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "optional": true, "dependencies": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -22953,6 +22975,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -23366,6 +23389,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -23374,6 +23398,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -23382,6 +23407,7 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "optional": true, "dependencies": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" @@ -33353,6 +33379,7 @@ "version": "1.1.5", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "optional": true, "dependencies": { "string-width": "^1.0.2 || 2 || 3 || 4" } @@ -39036,7 +39063,8 @@ "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "optional": true }, "abort-controller": { "version": "3.0.0", @@ -39394,6 +39422,7 @@ "version": "1.1.7", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "optional": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -39403,6 +39432,7 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "optional": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -39417,6 +39447,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "optional": true, "requires": { "safe-buffer": "~5.1.0" } @@ -41355,7 +41386,8 @@ "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "optional": true }, "collect-v8-coverage": { "version": "1.0.1", @@ -41601,7 +41633,8 @@ "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "optional": true }, "constant-case": { "version": "2.0.0", @@ -42557,7 +42590,8 @@ "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "optional": true }, "delimit-stream": { "version": "0.1.0", @@ -45158,6 +45192,7 @@ "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "optional": true, "requires": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -45172,12 +45207,14 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -45186,6 +45223,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -45196,6 +45234,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -45548,7 +45587,8 @@ "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "optional": true }, "has-value": { "version": "1.0.0", @@ -46374,7 +46414,8 @@ "immediate": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.3.0.tgz", - "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==" + "integrity": "sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==", + "optional": true }, "immer": { "version": "8.0.1", @@ -48554,6 +48595,7 @@ "version": "5.6.0", "resolved": "https://registry.npmjs.org/leveldown/-/leveldown-5.6.0.tgz", "integrity": "sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==", + "optional": true, "requires": { "abstract-leveldown": "~6.2.1", "napi-macros": "~2.0.0", @@ -48564,6 +48606,7 @@ "version": "6.2.3", "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz", "integrity": "sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==", + "optional": true, "requires": { "buffer": "^5.5.0", "immediate": "^3.2.3", @@ -48575,12 +48618,14 @@ "level-concat-iterator": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz", - "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==" + "integrity": "sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==", + "optional": true }, "level-supports": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/level-supports/-/level-supports-1.0.1.tgz", "integrity": "sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==", + "optional": true, "requires": { "xtend": "^4.0.2" } @@ -49674,7 +49719,8 @@ "napi-macros": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/napi-macros/-/napi-macros-2.0.0.tgz", - "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==" + "integrity": "sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==", + "optional": true }, "native-abort-controller": { "version": "1.0.4", @@ -49777,7 +49823,8 @@ "node-gyp-build": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.1.1.tgz", - "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==" + "integrity": "sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==", + "optional": true }, "node-int64": { "version": "0.4.0", @@ -50004,6 +50051,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "optional": true, "requires": { "abbrev": "1", "osenv": "^0.1.4" @@ -51916,6 +51964,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "optional": true, "requires": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -51939,7 +51988,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "optional": true }, "number-to-bn": { "version": "1.7.0", @@ -52248,17 +52298,20 @@ "os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "optional": true }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "optional": true }, "osenv": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "optional": true, "requires": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" @@ -60413,6 +60466,7 @@ "version": "1.1.5", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "optional": true, "requires": { "string-width": "^1.0.2 || 2 || 3 || 4" } diff --git a/src/pages/minter/index.js b/src/pages/minter/index.js index 5e900e6..4a6188c 100644 --- a/src/pages/minter/index.js +++ b/src/pages/minter/index.js @@ -25,7 +25,7 @@ const Minter = () => { // Função que é executada assim que o código é executado (ex: quando a página // é aberta no navegador) - useEffect(async () => {}); + useEffect(async () => {}, []); // Função executada quando o usuário clica no botão "conectar carteira" // Essa função irá chamar outra função utilitária (connectWallet) e irá