{ "abi": [], "bytecode": { "object": "0x60808060405234601757603a9081601d823930815050f35b600080fdfe600080fdfea2646970667358221220d22a9db0e1bd13ff74bcbd0313382455456820f54744acc25e9e448ce608987b64736f6c63430008110033", "sourceMap": "816:5655:8:-:0;;;;;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { "object": "0x600080fdfea2646970667358221220d22a9db0e1bd13ff74bcbd0313382455456820f54744acc25e9e448ce608987b64736f6c63430008110033", "sourceMap": "816:5655:8:-:0;;", "linkReferences": {} }, "methodIdentifiers": {}, "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdJson.sol\":\"stdJson\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc\",\"dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69\",\"dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB\"]}},\"version\":1}", "metadata": { "compiler": { "version": "0.8.17+commit.8df45f5f" }, "language": "Solidity", "output": { "abi": [], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }, "settings": { "remappings": [ ":@ensdomains/=node_modules/@ensdomains/", ":@openzeppelin/=node_modules/@openzeppelin/", ":ds-test/=lib/forge-std/lib/ds-test/src/", ":eth-gas-reporter/=node_modules/eth-gas-reporter/", ":forge-std/=lib/forge-std/src/", ":hardhat-deploy/=node_modules/hardhat-deploy/", ":hardhat/=node_modules/hardhat/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "bytecodeHash": "ipfs" }, "compilationTarget": { "lib/forge-std/src/StdJson.sol": "stdJson" }, "libraries": {}, "viaIR": true }, "sources": { "lib/forge-std/src/StdJson.sol": { "keccak256": "0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d", "urls": [ "bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc", "dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus" ], "license": "MIT" }, "lib/forge-std/src/Vm.sol": { "keccak256": "0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7", "urls": [ "bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69", "dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB" ], "license": "MIT" } }, "version": 1 }, "ast": { "absolutePath": "lib/forge-std/src/StdJson.sol", "id": 6216, "exportedSymbols": { "Vm": [ 9256 ], "VmSafe": [ 8931 ], "stdJson": [ 6215 ] }, "nodeType": "SourceUnit", "src": "32:6440:8", "nodes": [ { "id": 5551, "nodeType": "PragmaDirective", "src": "32:31:8", "nodes": [], "literals": [ "solidity", ">=", "0.6", ".0", "<", "0.9", ".0" ] }, { "id": 5552, "nodeType": "PragmaDirective", "src": "65:33:8", "nodes": [], "literals": [ "experimental", "ABIEncoderV2" ] }, { "id": 5553, "nodeType": "ImportDirective", "src": "100:18:8", "nodes": [], "absolutePath": "lib/forge-std/src/Vm.sol", "file": "./Vm.sol", "nameLocation": "-1:-1:-1", "scope": 6216, "sourceUnit": 9257, "symbolAliases": [], "unitAlias": "" }, { "id": 6215, "nodeType": "ContractDefinition", "src": "816:5655:8", "nodes": [ { "id": 5570, "nodeType": "VariableDeclaration", "src": "838:88:8", "nodes": [], "constant": true, "mutability": "constant", "name": "vm", "nameLocation": "862:2:8", "scope": 6215, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" }, "typeName": { "id": 5555, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 5554, "name": "VmSafe", "nameLocations": [ "838:6:8" ], "nodeType": "IdentifierPath", "referencedDeclaration": 8931, "src": "838:6:8" }, "referencedDeclaration": 8931, "src": "838:6:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "value": { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "arguments": [ { "hexValue": "6865766d20636865617420636f6465", "id": 5564, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "904:17:8", "typeDescriptions": { "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", "typeString": "literal_string \"hevm cheat code\"" }, "value": "hevm cheat code" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", "typeString": "literal_string \"hevm cheat code\"" } ], "id": 5563, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -8, "src": "894:9:8", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, "id": 5565, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "894:28:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "id": 5562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "886:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 5561, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "886:7:8", "typeDescriptions": {} } }, "id": 5566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "886:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 5560, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "878:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { "id": 5559, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "878:7:8", "typeDescriptions": {} } }, "id": 5567, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "878:46:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint160", "typeString": "uint160" } ], "id": 5558, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "870:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5557, "name": "address", "nodeType": "ElementaryTypeName", "src": "870:7:8", "typeDescriptions": {} } }, "id": 5568, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "870:55:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" } ], "id": 5556, "name": "Vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 9256, "src": "867:2:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_contract$_Vm_$9256_$", "typeString": "type(contract Vm)" } }, "id": 5569, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "867:59:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_contract$_Vm_$9256", "typeString": "contract Vm" } }, "visibility": "private" }, { "id": 5586, "nodeType": "FunctionDefinition", "src": "933:141:8", "nodes": [], "body": { "id": 5585, "nodeType": "Block", "src": "1027:47:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5581, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5572, "src": "1057:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5582, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5574, "src": "1063:3:8", "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": 5579, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1044:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5580, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1047:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1044:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5583, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1044:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "functionReturnParameters": 5578, "id": 5584, "nodeType": "Return", "src": "1037:30:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "parseRaw", "nameLocation": "942:8:8", "parameters": { "id": 5575, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5572, "mutability": "mutable", "name": "json", "nameLocation": "965:4:8", "nodeType": "VariableDeclaration", "scope": 5586, "src": "951:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5571, "name": "string", "nodeType": "ElementaryTypeName", "src": "951:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5574, "mutability": "mutable", "name": "key", "nameLocation": "985:3:8", "nodeType": "VariableDeclaration", "scope": 5586, "src": "971:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5573, "name": "string", "nodeType": "ElementaryTypeName", "src": "971:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "950:39:8" }, "returnParameters": { "id": 5578, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5577, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5586, "src": "1013:12:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 5576, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "1013:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "1012:14:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5608, "nodeType": "FunctionDefinition", "src": "1080:159:8", "nodes": [], "body": { "id": 5607, "nodeType": "Block", "src": "1169:70:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5599, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5588, "src": "1210:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5600, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5590, "src": "1216:3:8", "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": 5597, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1197:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1200:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1197:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5601, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1197:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5603, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1223:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 5602, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1223:7:8", "typeDescriptions": {} } } ], "id": 5604, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1222:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" } ], "expression": { "id": 5595, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "1186:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5596, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "1190:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "1186:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5605, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1186:46:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "functionReturnParameters": 5594, "id": 5606, "nodeType": "Return", "src": "1179:53:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readUint", "nameLocation": "1089:8:8", "parameters": { "id": 5591, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5588, "mutability": "mutable", "name": "json", "nameLocation": "1112:4:8", "nodeType": "VariableDeclaration", "scope": 5608, "src": "1098:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5587, "name": "string", "nodeType": "ElementaryTypeName", "src": "1098:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5590, "mutability": "mutable", "name": "key", "nameLocation": "1132:3:8", "nodeType": "VariableDeclaration", "scope": 5608, "src": "1118:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5589, "name": "string", "nodeType": "ElementaryTypeName", "src": "1118:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1097:39:8" }, "returnParameters": { "id": 5594, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5593, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5608, "src": "1160:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5592, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1160:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1159:9:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5632, "nodeType": "FunctionDefinition", "src": "1245:175:8", "nodes": [], "body": { "id": 5631, "nodeType": "Block", "src": "1348:72:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5622, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5610, "src": "1389:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5623, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5612, "src": "1395:3:8", "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": 5620, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1376:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5621, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1379:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1376:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5624, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1376:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5626, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1402:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 5625, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1402:7:8", "typeDescriptions": {} } }, "id": 5627, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "1402:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "type(uint256[] memory)" } } ], "id": 5628, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1401:11:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "type(uint256[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_uint256_$dyn_memory_ptr_$", "typeString": "type(uint256[] memory)" } ], "expression": { "id": 5618, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "1365:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5619, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "1369:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "1365:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5629, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1365:48:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, "functionReturnParameters": 5617, "id": 5630, "nodeType": "Return", "src": "1358:55:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readUintArray", "nameLocation": "1254:13:8", "parameters": { "id": 5613, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5610, "mutability": "mutable", "name": "json", "nameLocation": "1282:4:8", "nodeType": "VariableDeclaration", "scope": 5632, "src": "1268:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5609, "name": "string", "nodeType": "ElementaryTypeName", "src": "1268:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5612, "mutability": "mutable", "name": "key", "nameLocation": "1302:3:8", "nodeType": "VariableDeclaration", "scope": 5632, "src": "1288:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5611, "name": "string", "nodeType": "ElementaryTypeName", "src": "1288:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1267:39:8" }, "returnParameters": { "id": 5617, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5616, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5632, "src": "1330:16:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5614, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1330:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5615, "nodeType": "ArrayTypeName", "src": "1330:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "1329:18:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5654, "nodeType": "FunctionDefinition", "src": "1426:156:8", "nodes": [], "body": { "id": 5653, "nodeType": "Block", "src": "1513:69:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5645, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5634, "src": "1554:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5646, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5636, "src": "1560:3:8", "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": 5643, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1541:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5644, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1544:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1541:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5647, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1541:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5649, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1567:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 5648, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1567:6:8", "typeDescriptions": {} } } ], "id": 5650, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1566:8:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" } ], "expression": { "id": 5641, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "1530:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5642, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "1534:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "1530:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5651, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1530:45:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "functionReturnParameters": 5640, "id": 5652, "nodeType": "Return", "src": "1523:52:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readInt", "nameLocation": "1435:7:8", "parameters": { "id": 5637, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5634, "mutability": "mutable", "name": "json", "nameLocation": "1457:4:8", "nodeType": "VariableDeclaration", "scope": 5654, "src": "1443:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5633, "name": "string", "nodeType": "ElementaryTypeName", "src": "1443:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5636, "mutability": "mutable", "name": "key", "nameLocation": "1477:3:8", "nodeType": "VariableDeclaration", "scope": 5654, "src": "1463:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5635, "name": "string", "nodeType": "ElementaryTypeName", "src": "1463:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1442:39:8" }, "returnParameters": { "id": 5640, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5639, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5654, "src": "1505:6:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 5638, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1505:6:8", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "1504:8:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5678, "nodeType": "FunctionDefinition", "src": "1588:172:8", "nodes": [], "body": { "id": 5677, "nodeType": "Block", "src": "1689:71:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5668, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5656, "src": "1730:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5669, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5658, "src": "1736:3:8", "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": 5666, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1717:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5667, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1720:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1717:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5670, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1717:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5672, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1743:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 5671, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1743:6:8", "typeDescriptions": {} } }, "id": 5673, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "1743:8:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_int256_$dyn_memory_ptr_$", "typeString": "type(int256[] memory)" } } ], "id": 5674, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1742:10:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_int256_$dyn_memory_ptr_$", "typeString": "type(int256[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_int256_$dyn_memory_ptr_$", "typeString": "type(int256[] memory)" } ], "expression": { "id": 5664, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "1706:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5665, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "1710:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "1706:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5675, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1706:47:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } }, "functionReturnParameters": 5663, "id": 5676, "nodeType": "Return", "src": "1699:54:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readIntArray", "nameLocation": "1597:12:8", "parameters": { "id": 5659, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5656, "mutability": "mutable", "name": "json", "nameLocation": "1624:4:8", "nodeType": "VariableDeclaration", "scope": 5678, "src": "1610:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5655, "name": "string", "nodeType": "ElementaryTypeName", "src": "1610:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5658, "mutability": "mutable", "name": "key", "nameLocation": "1644:3:8", "nodeType": "VariableDeclaration", "scope": 5678, "src": "1630:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5657, "name": "string", "nodeType": "ElementaryTypeName", "src": "1630:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1609:39:8" }, "returnParameters": { "id": 5663, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5662, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5678, "src": "1672:15:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[]" }, "typeName": { "baseType": { "id": 5660, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1672:6:8", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 5661, "nodeType": "ArrayTypeName", "src": "1672:8:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", "typeString": "int256[]" } }, "visibility": "internal" } ], "src": "1671:17:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5700, "nodeType": "FunctionDefinition", "src": "1766:162:8", "nodes": [], "body": { "id": 5699, "nodeType": "Block", "src": "1858:70:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5691, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5680, "src": "1899:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5692, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5682, "src": "1905:3:8", "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": 5689, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "1886:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5690, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "1889:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "1886:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5693, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1886:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5695, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1912:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 5694, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1912:7:8", "typeDescriptions": {} } } ], "id": 5696, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1911:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" } ], "expression": { "id": 5687, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "1875:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5688, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "1879:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "1875:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5697, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1875:46:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "functionReturnParameters": 5686, "id": 5698, "nodeType": "Return", "src": "1868:53:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBytes32", "nameLocation": "1775:11:8", "parameters": { "id": 5683, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5680, "mutability": "mutable", "name": "json", "nameLocation": "1801:4:8", "nodeType": "VariableDeclaration", "scope": 5700, "src": "1787:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5679, "name": "string", "nodeType": "ElementaryTypeName", "src": "1787:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5682, "mutability": "mutable", "name": "key", "nameLocation": "1821:3:8", "nodeType": "VariableDeclaration", "scope": 5700, "src": "1807:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5681, "name": "string", "nodeType": "ElementaryTypeName", "src": "1807:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1786:39:8" }, "returnParameters": { "id": 5686, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5685, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5700, "src": "1849:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 5684, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1849:7:8", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1848:9:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5724, "nodeType": "FunctionDefinition", "src": "1934:178:8", "nodes": [], "body": { "id": 5723, "nodeType": "Block", "src": "2040:72:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5714, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5702, "src": "2081:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5715, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5704, "src": "2087:3:8", "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": 5712, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2068:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5713, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2071:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2068:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5716, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2068:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5718, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2094:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": { "id": 5717, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2094:7:8", "typeDescriptions": {} } }, "id": 5719, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "2094:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$", "typeString": "type(bytes32[] memory)" } } ], "id": 5720, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2093:11:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$", "typeString": "type(bytes32[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$", "typeString": "type(bytes32[] memory)" } ], "expression": { "id": 5710, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2057:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5711, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2061:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2057:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5721, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2057:48:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[] memory" } }, "functionReturnParameters": 5709, "id": 5722, "nodeType": "Return", "src": "2050:55:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBytes32Array", "nameLocation": "1943:16:8", "parameters": { "id": 5705, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5702, "mutability": "mutable", "name": "json", "nameLocation": "1974:4:8", "nodeType": "VariableDeclaration", "scope": 5724, "src": "1960:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5701, "name": "string", "nodeType": "ElementaryTypeName", "src": "1960:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5704, "mutability": "mutable", "name": "key", "nameLocation": "1994:3:8", "nodeType": "VariableDeclaration", "scope": 5724, "src": "1980:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5703, "name": "string", "nodeType": "ElementaryTypeName", "src": "1980:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "1959:39:8" }, "returnParameters": { "id": 5709, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5708, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5724, "src": "2022:16:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[]" }, "typeName": { "baseType": { "id": 5706, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "2022:7:8", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "id": 5707, "nodeType": "ArrayTypeName", "src": "2022:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", "typeString": "bytes32[]" } }, "visibility": "internal" } ], "src": "2021:18:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5746, "nodeType": "FunctionDefinition", "src": "2118:166:8", "nodes": [], "body": { "id": 5745, "nodeType": "Block", "src": "2215:69:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5737, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5726, "src": "2256:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5738, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5728, "src": "2262:3:8", "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": 5735, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2243:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5736, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2246:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2243:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5739, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2243:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5741, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2269:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": { "id": 5740, "name": "string", "nodeType": "ElementaryTypeName", "src": "2269:6:8", "typeDescriptions": {} } } ], "id": 5742, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2268:8:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" } ], "expression": { "id": 5733, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2232:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5734, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2236:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2232:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5743, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2232:45:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5732, "id": 5744, "nodeType": "Return", "src": "2225:52:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readString", "nameLocation": "2127:10:8", "parameters": { "id": 5729, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5726, "mutability": "mutable", "name": "json", "nameLocation": "2152:4:8", "nodeType": "VariableDeclaration", "scope": 5746, "src": "2138:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5725, "name": "string", "nodeType": "ElementaryTypeName", "src": "2138:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5728, "mutability": "mutable", "name": "key", "nameLocation": "2172:3:8", "nodeType": "VariableDeclaration", "scope": 5746, "src": "2158:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5727, "name": "string", "nodeType": "ElementaryTypeName", "src": "2158:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2137:39:8" }, "returnParameters": { "id": 5732, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5731, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5746, "src": "2200:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5730, "name": "string", "nodeType": "ElementaryTypeName", "src": "2200:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2199:15:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5770, "nodeType": "FunctionDefinition", "src": "2290:175:8", "nodes": [], "body": { "id": 5769, "nodeType": "Block", "src": "2394:71:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5760, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5748, "src": "2435:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5761, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5750, "src": "2441:3:8", "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": 5758, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2422:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5759, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2425:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2422:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5762, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2422:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5764, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2448:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": { "id": 5763, "name": "string", "nodeType": "ElementaryTypeName", "src": "2448:6:8", "typeDescriptions": {} } }, "id": 5765, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "2448:8:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(string memory[] memory)" } } ], "id": 5766, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2447:10:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(string memory[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(string memory[] memory)" } ], "expression": { "id": 5756, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2411:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5757, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2415:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2411:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5767, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2411:47:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", "typeString": "string memory[] memory" } }, "functionReturnParameters": 5755, "id": 5768, "nodeType": "Return", "src": "2404:54:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readStringArray", "nameLocation": "2299:15:8", "parameters": { "id": 5751, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5748, "mutability": "mutable", "name": "json", "nameLocation": "2329:4:8", "nodeType": "VariableDeclaration", "scope": 5770, "src": "2315:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5747, "name": "string", "nodeType": "ElementaryTypeName", "src": "2315:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5750, "mutability": "mutable", "name": "key", "nameLocation": "2349:3:8", "nodeType": "VariableDeclaration", "scope": 5770, "src": "2335:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5749, "name": "string", "nodeType": "ElementaryTypeName", "src": "2335:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2314:39:8" }, "returnParameters": { "id": 5755, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5754, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5770, "src": "2377:15:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", "typeString": "string[]" }, "typeName": { "baseType": { "id": 5752, "name": "string", "nodeType": "ElementaryTypeName", "src": "2377:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "id": 5753, "nodeType": "ArrayTypeName", "src": "2377:8:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", "typeString": "string[]" } }, "visibility": "internal" } ], "src": "2376:17:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5792, "nodeType": "FunctionDefinition", "src": "2471:162:8", "nodes": [], "body": { "id": 5791, "nodeType": "Block", "src": "2563:70:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5783, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5772, "src": "2604:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5784, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5774, "src": "2610:3:8", "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": 5781, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2591:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5782, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2594:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2591:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5785, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2591:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5787, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2617:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5786, "name": "address", "nodeType": "ElementaryTypeName", "src": "2617:7:8", "typeDescriptions": {} } } ], "id": 5788, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2616:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" } ], "expression": { "id": 5779, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2580:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5780, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2584:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2580:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5789, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2580:46:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } }, "functionReturnParameters": 5778, "id": 5790, "nodeType": "Return", "src": "2573:53:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readAddress", "nameLocation": "2480:11:8", "parameters": { "id": 5775, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5772, "mutability": "mutable", "name": "json", "nameLocation": "2506:4:8", "nodeType": "VariableDeclaration", "scope": 5792, "src": "2492:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5771, "name": "string", "nodeType": "ElementaryTypeName", "src": "2492:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5774, "mutability": "mutable", "name": "key", "nameLocation": "2526:3:8", "nodeType": "VariableDeclaration", "scope": 5792, "src": "2512:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5773, "name": "string", "nodeType": "ElementaryTypeName", "src": "2512:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2491:39:8" }, "returnParameters": { "id": 5778, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5777, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5792, "src": "2554:7:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 5776, "name": "address", "nodeType": "ElementaryTypeName", "src": "2554:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "2553:9:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5816, "nodeType": "FunctionDefinition", "src": "2639:178:8", "nodes": [], "body": { "id": 5815, "nodeType": "Block", "src": "2745:72:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5806, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5794, "src": "2786:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5807, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5796, "src": "2792:3:8", "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": 5804, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2773:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5805, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2776:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2773:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5808, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2773:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5810, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2799:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": { "id": 5809, "name": "address", "nodeType": "ElementaryTypeName", "src": "2799:7:8", "typeDescriptions": {} } }, "id": 5811, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "2799:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_address_$dyn_memory_ptr_$", "typeString": "type(address[] memory)" } } ], "id": 5812, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2798:11:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_address_$dyn_memory_ptr_$", "typeString": "type(address[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_address_$dyn_memory_ptr_$", "typeString": "type(address[] memory)" } ], "expression": { "id": 5802, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2762:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5803, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2766:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2762:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5813, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2762:48:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[] memory" } }, "functionReturnParameters": 5801, "id": 5814, "nodeType": "Return", "src": "2755:55:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readAddressArray", "nameLocation": "2648:16:8", "parameters": { "id": 5797, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5794, "mutability": "mutable", "name": "json", "nameLocation": "2679:4:8", "nodeType": "VariableDeclaration", "scope": 5816, "src": "2665:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5793, "name": "string", "nodeType": "ElementaryTypeName", "src": "2665:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5796, "mutability": "mutable", "name": "key", "nameLocation": "2699:3:8", "nodeType": "VariableDeclaration", "scope": 5816, "src": "2685:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5795, "name": "string", "nodeType": "ElementaryTypeName", "src": "2685:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2664:39:8" }, "returnParameters": { "id": 5801, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5800, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5816, "src": "2727:16:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[]" }, "typeName": { "baseType": { "id": 5798, "name": "address", "nodeType": "ElementaryTypeName", "src": "2727:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 5799, "nodeType": "ArrayTypeName", "src": "2727:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" } }, "visibility": "internal" } ], "src": "2726:18:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5838, "nodeType": "FunctionDefinition", "src": "2823:153:8", "nodes": [], "body": { "id": 5837, "nodeType": "Block", "src": "2909:67:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5829, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5818, "src": "2950:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5830, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5820, "src": "2956:3:8", "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": 5827, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "2937:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5828, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "2940:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "2937:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5831, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2937:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5833, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "2963:4:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bool_$", "typeString": "type(bool)" }, "typeName": { "id": 5832, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2963:4:8", "typeDescriptions": {} } } ], "id": 5834, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2962:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bool_$", "typeString": "type(bool)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_bool_$", "typeString": "type(bool)" } ], "expression": { "id": 5825, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "2926:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5826, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "2930:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "2926:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5835, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "2926:43:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "functionReturnParameters": 5824, "id": 5836, "nodeType": "Return", "src": "2919:50:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBool", "nameLocation": "2832:8:8", "parameters": { "id": 5821, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5818, "mutability": "mutable", "name": "json", "nameLocation": "2855:4:8", "nodeType": "VariableDeclaration", "scope": 5838, "src": "2841:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5817, "name": "string", "nodeType": "ElementaryTypeName", "src": "2841:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5820, "mutability": "mutable", "name": "key", "nameLocation": "2875:3:8", "nodeType": "VariableDeclaration", "scope": 5838, "src": "2861:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5819, "name": "string", "nodeType": "ElementaryTypeName", "src": "2861:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "2840:39:8" }, "returnParameters": { "id": 5824, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5823, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5838, "src": "2903:4:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5822, "name": "bool", "nodeType": "ElementaryTypeName", "src": "2903:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "2902:6:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5862, "nodeType": "FunctionDefinition", "src": "2982:169:8", "nodes": [], "body": { "id": 5861, "nodeType": "Block", "src": "3082:69:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5852, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5840, "src": "3123:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5853, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5842, "src": "3129:3:8", "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": 5850, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "3110:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5851, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "3113:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "3110:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5854, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3110:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5856, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3136:4:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bool_$", "typeString": "type(bool)" }, "typeName": { "id": 5855, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3136:4:8", "typeDescriptions": {} } }, "id": 5857, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "3136:6:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bool_$dyn_memory_ptr_$", "typeString": "type(bool[] memory)" } } ], "id": 5858, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3135:8:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bool_$dyn_memory_ptr_$", "typeString": "type(bool[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_bool_$dyn_memory_ptr_$", "typeString": "type(bool[] memory)" } ], "expression": { "id": 5848, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "3099:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5849, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "3103:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "3099:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5859, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3099:45:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", "typeString": "bool[] memory" } }, "functionReturnParameters": 5847, "id": 5860, "nodeType": "Return", "src": "3092:52:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBoolArray", "nameLocation": "2991:13:8", "parameters": { "id": 5843, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5840, "mutability": "mutable", "name": "json", "nameLocation": "3019:4:8", "nodeType": "VariableDeclaration", "scope": 5862, "src": "3005:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5839, "name": "string", "nodeType": "ElementaryTypeName", "src": "3005:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5842, "mutability": "mutable", "name": "key", "nameLocation": "3039:3:8", "nodeType": "VariableDeclaration", "scope": 5862, "src": "3025:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5841, "name": "string", "nodeType": "ElementaryTypeName", "src": "3025:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3004:39:8" }, "returnParameters": { "id": 5847, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5846, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5862, "src": "3067:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", "typeString": "bool[]" }, "typeName": { "baseType": { "id": 5844, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3067:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5845, "nodeType": "ArrayTypeName", "src": "3067:6:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr", "typeString": "bool[]" } }, "visibility": "internal" } ], "src": "3066:15:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5884, "nodeType": "FunctionDefinition", "src": "3157:163:8", "nodes": [], "body": { "id": 5883, "nodeType": "Block", "src": "3252:68:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5875, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5864, "src": "3293:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5876, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5866, "src": "3299:3:8", "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": 5873, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "3280:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5874, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "3283:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "3280:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5877, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3280:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "id": 5879, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3306:5:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { "id": 5878, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3306:5:8", "typeDescriptions": {} } } ], "id": 5880, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3305:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" } ], "expression": { "id": 5871, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "3269:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5872, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "3273:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "3269:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5881, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3269:44:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "functionReturnParameters": 5870, "id": 5882, "nodeType": "Return", "src": "3262:51:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBytes", "nameLocation": "3166:9:8", "parameters": { "id": 5867, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5864, "mutability": "mutable", "name": "json", "nameLocation": "3190:4:8", "nodeType": "VariableDeclaration", "scope": 5884, "src": "3176:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5863, "name": "string", "nodeType": "ElementaryTypeName", "src": "3176:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5866, "mutability": "mutable", "name": "key", "nameLocation": "3210:3:8", "nodeType": "VariableDeclaration", "scope": 5884, "src": "3196:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5865, "name": "string", "nodeType": "ElementaryTypeName", "src": "3196:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3175:39:8" }, "returnParameters": { "id": 5870, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5869, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5884, "src": "3238:12:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 5868, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3238:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "3237:14:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5908, "nodeType": "FunctionDefinition", "src": "3326:172:8", "nodes": [], "body": { "id": 5907, "nodeType": "Block", "src": "3428:70:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "arguments": [ { "id": 5898, "name": "json", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5886, "src": "3469:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5899, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5888, "src": "3475:3:8", "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": 5896, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "3456:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5897, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "3459:9:8", "memberName": "parseJson", "nodeType": "MemberAccess", "referencedDeclaration": 8719, "src": "3456:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", "typeString": "function (string memory,string memory) pure external returns (bytes memory)" } }, "id": 5900, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3456:23:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, { "components": [ { "baseExpression": { "id": 5902, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3482:5:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": { "id": 5901, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3482:5:8", "typeDescriptions": {} } }, "id": 5903, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "IndexAccess", "src": "3482:7:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(bytes memory[] memory)" } } ], "id": 5904, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3481:9:8", "typeDescriptions": { "typeIdentifier": "t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(bytes memory[] memory)" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" }, { "typeIdentifier": "t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$", "typeString": "type(bytes memory[] memory)" } ], "expression": { "id": 5894, "name": "abi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -1, "src": "3445:3:8", "typeDescriptions": { "typeIdentifier": "t_magic_abi", "typeString": "abi" } }, "id": 5895, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "3449:6:8", "memberName": "decode", "nodeType": "MemberAccess", "src": "3445:10:8", "typeDescriptions": { "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 5905, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3445:46:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", "typeString": "bytes memory[] memory" } }, "functionReturnParameters": 5893, "id": 5906, "nodeType": "Return", "src": "3438:53:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "readBytesArray", "nameLocation": "3335:14:8", "parameters": { "id": 5889, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5886, "mutability": "mutable", "name": "json", "nameLocation": "3364:4:8", "nodeType": "VariableDeclaration", "scope": 5908, "src": "3350:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5885, "name": "string", "nodeType": "ElementaryTypeName", "src": "3350:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5888, "mutability": "mutable", "name": "key", "nameLocation": "3384:3:8", "nodeType": "VariableDeclaration", "scope": 5908, "src": "3370:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5887, "name": "string", "nodeType": "ElementaryTypeName", "src": "3370:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3349:39:8" }, "returnParameters": { "id": 5893, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5892, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5908, "src": "3412:14:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", "typeString": "bytes[]" }, "typeName": { "baseType": { "id": 5890, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "3412:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "id": 5891, "nodeType": "ArrayTypeName", "src": "3412:7:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", "typeString": "bytes[]" } }, "visibility": "internal" } ], "src": "3411:16:8" }, "scope": 6215, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 5927, "nodeType": "FunctionDefinition", "src": "3504:167:8", "nodes": [], "body": { "id": 5926, "nodeType": "Block", "src": "3610:61:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5921, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5910, "src": "3644:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5922, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5912, "src": "3653:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5923, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5914, "src": "3658:5:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_bool", "typeString": "bool" } ], "expression": { "id": 5919, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "3627:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5920, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "3630:13:8", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8737, "src": "3627:16:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bool_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bool) external returns (string memory)" } }, "id": 5924, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3627:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5918, "id": 5925, "nodeType": "Return", "src": "3620:44:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "3513:9:8", "parameters": { "id": 5915, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5910, "mutability": "mutable", "name": "jsonKey", "nameLocation": "3537:7:8", "nodeType": "VariableDeclaration", "scope": 5927, "src": "3523:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5909, "name": "string", "nodeType": "ElementaryTypeName", "src": "3523:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5912, "mutability": "mutable", "name": "key", "nameLocation": "3560:3:8", "nodeType": "VariableDeclaration", "scope": 5927, "src": "3546:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5911, "name": "string", "nodeType": "ElementaryTypeName", "src": "3546:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5914, "mutability": "mutable", "name": "value", "nameLocation": "3570:5:8", "nodeType": "VariableDeclaration", "scope": 5927, "src": "3565:10:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 5913, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3565:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "3522:54:8" }, "returnParameters": { "id": 5918, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5917, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5927, "src": "3595:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5916, "name": "string", "nodeType": "ElementaryTypeName", "src": "3595:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3594:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 5947, "nodeType": "FunctionDefinition", "src": "3677:196:8", "nodes": [], "body": { "id": 5946, "nodeType": "Block", "src": "3812:61:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5941, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5929, "src": "3846:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5942, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5931, "src": "3855:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5943, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5934, "src": "3860:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", "typeString": "bool[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", "typeString": "bool[] memory" } ], "expression": { "id": 5939, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "3829:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "3832:13:8", "memberName": "serializeBool", "nodeType": "MemberAccess", "referencedDeclaration": 8815, "src": "3829:16:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_bool_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bool[] memory) external returns (string memory)" } }, "id": 5944, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3829:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5938, "id": 5945, "nodeType": "Return", "src": "3822:44:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "3686:9:8", "parameters": { "id": 5935, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5929, "mutability": "mutable", "name": "jsonKey", "nameLocation": "3710:7:8", "nodeType": "VariableDeclaration", "scope": 5947, "src": "3696:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5928, "name": "string", "nodeType": "ElementaryTypeName", "src": "3696:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5931, "mutability": "mutable", "name": "key", "nameLocation": "3733:3:8", "nodeType": "VariableDeclaration", "scope": 5947, "src": "3719:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5930, "name": "string", "nodeType": "ElementaryTypeName", "src": "3719:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5934, "mutability": "mutable", "name": "value", "nameLocation": "3752:5:8", "nodeType": "VariableDeclaration", "scope": 5947, "src": "3738:19:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", "typeString": "bool[]" }, "typeName": { "baseType": { "id": 5932, "name": "bool", "nodeType": "ElementaryTypeName", "src": "3738:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 5933, "nodeType": "ArrayTypeName", "src": "3738:6:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr", "typeString": "bool[]" } }, "visibility": "internal" } ], "src": "3695:63:8" }, "returnParameters": { "id": 5938, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5937, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5947, "src": "3793:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5936, "name": "string", "nodeType": "ElementaryTypeName", "src": "3793:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3792:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 5966, "nodeType": "FunctionDefinition", "src": "3879:170:8", "nodes": [], "body": { "id": 5965, "nodeType": "Block", "src": "3988:61:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5960, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5949, "src": "4022:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5961, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5951, "src": "4031:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5962, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5953, "src": "4036:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "expression": { "id": 5958, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4005:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5959, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4008:13:8", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8748, "src": "4005:16:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint256_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,uint256) external returns (string memory)" } }, "id": 5963, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4005:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5957, "id": 5964, "nodeType": "Return", "src": "3998:44:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "3888:9:8", "parameters": { "id": 5954, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5949, "mutability": "mutable", "name": "jsonKey", "nameLocation": "3912:7:8", "nodeType": "VariableDeclaration", "scope": 5966, "src": "3898:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5948, "name": "string", "nodeType": "ElementaryTypeName", "src": "3898:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5951, "mutability": "mutable", "name": "key", "nameLocation": "3935:3:8", "nodeType": "VariableDeclaration", "scope": 5966, "src": "3921:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5950, "name": "string", "nodeType": "ElementaryTypeName", "src": "3921:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5953, "mutability": "mutable", "name": "value", "nameLocation": "3948:5:8", "nodeType": "VariableDeclaration", "scope": 5966, "src": "3940:13:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 5952, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3940:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "3897:57:8" }, "returnParameters": { "id": 5957, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5956, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5966, "src": "3973:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5955, "name": "string", "nodeType": "ElementaryTypeName", "src": "3973:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "3972:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 5986, "nodeType": "FunctionDefinition", "src": "4055:199:8", "nodes": [], "body": { "id": 5985, "nodeType": "Block", "src": "4193:61:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5980, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5968, "src": "4227:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5981, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5970, "src": "4236:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 5982, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5973, "src": "4241:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } ], "expression": { "id": 5978, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4210:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5979, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4213:13:8", "memberName": "serializeUint", "nodeType": "MemberAccess", "referencedDeclaration": 8827, "src": "4210:16:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,uint256[] memory) external returns (string memory)" } }, "id": 5983, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4210:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5977, "id": 5984, "nodeType": "Return", "src": "4203:44:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "4064:9:8", "parameters": { "id": 5974, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5968, "mutability": "mutable", "name": "jsonKey", "nameLocation": "4088:7:8", "nodeType": "VariableDeclaration", "scope": 5986, "src": "4074:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5967, "name": "string", "nodeType": "ElementaryTypeName", "src": "4074:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5970, "mutability": "mutable", "name": "key", "nameLocation": "4111:3:8", "nodeType": "VariableDeclaration", "scope": 5986, "src": "4097:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5969, "name": "string", "nodeType": "ElementaryTypeName", "src": "4097:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5973, "mutability": "mutable", "name": "value", "nameLocation": "4133:5:8", "nodeType": "VariableDeclaration", "scope": 5986, "src": "4116:22:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 5971, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4116:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 5972, "nodeType": "ArrayTypeName", "src": "4116:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "visibility": "internal" } ], "src": "4073:66:8" }, "returnParameters": { "id": 5977, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5976, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 5986, "src": "4174:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5975, "name": "string", "nodeType": "ElementaryTypeName", "src": "4174:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4173:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6005, "nodeType": "FunctionDefinition", "src": "4260:168:8", "nodes": [], "body": { "id": 6004, "nodeType": "Block", "src": "4368:60:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 5999, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5988, "src": "4401:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6000, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5990, "src": "4410:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6001, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5992, "src": "4415:5:8", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_int256", "typeString": "int256" } ], "expression": { "id": 5997, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4385:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 5998, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4388:12:8", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8759, "src": "4385:15:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_int256_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,int256) external returns (string memory)" } }, "id": 6002, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4385:36:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 5996, "id": 6003, "nodeType": "Return", "src": "4378:43:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "4269:9:8", "parameters": { "id": 5993, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5988, "mutability": "mutable", "name": "jsonKey", "nameLocation": "4293:7:8", "nodeType": "VariableDeclaration", "scope": 6005, "src": "4279:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5987, "name": "string", "nodeType": "ElementaryTypeName", "src": "4279:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5990, "mutability": "mutable", "name": "key", "nameLocation": "4316:3:8", "nodeType": "VariableDeclaration", "scope": 6005, "src": "4302:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5989, "name": "string", "nodeType": "ElementaryTypeName", "src": "4302:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 5992, "mutability": "mutable", "name": "value", "nameLocation": "4328:5:8", "nodeType": "VariableDeclaration", "scope": 6005, "src": "4321:12:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 5991, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4321:6:8", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "src": "4278:56:8" }, "returnParameters": { "id": 5996, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 5995, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6005, "src": "4353:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 5994, "name": "string", "nodeType": "ElementaryTypeName", "src": "4353:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4352:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6025, "nodeType": "FunctionDefinition", "src": "4434:197:8", "nodes": [], "body": { "id": 6024, "nodeType": "Block", "src": "4571:60:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6019, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6007, "src": "4604:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6020, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6009, "src": "4613:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6021, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6012, "src": "4618:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[] memory" } ], "expression": { "id": 6017, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4588:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4591:12:8", "memberName": "serializeInt", "nodeType": "MemberAccess", "referencedDeclaration": 8839, "src": "4588:15:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,int256[] memory) external returns (string memory)" } }, "id": 6022, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4588:36:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6016, "id": 6023, "nodeType": "Return", "src": "4581:43:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "4443:9:8", "parameters": { "id": 6013, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6007, "mutability": "mutable", "name": "jsonKey", "nameLocation": "4467:7:8", "nodeType": "VariableDeclaration", "scope": 6025, "src": "4453:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6006, "name": "string", "nodeType": "ElementaryTypeName", "src": "4453:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6009, "mutability": "mutable", "name": "key", "nameLocation": "4490:3:8", "nodeType": "VariableDeclaration", "scope": 6025, "src": "4476:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6008, "name": "string", "nodeType": "ElementaryTypeName", "src": "4476:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6012, "mutability": "mutable", "name": "value", "nameLocation": "4511:5:8", "nodeType": "VariableDeclaration", "scope": 6025, "src": "4495:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", "typeString": "int256[]" }, "typeName": { "baseType": { "id": 6010, "name": "int256", "nodeType": "ElementaryTypeName", "src": "4495:6:8", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "id": 6011, "nodeType": "ArrayTypeName", "src": "4495:8:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", "typeString": "int256[]" } }, "visibility": "internal" } ], "src": "4452:65:8" }, "returnParameters": { "id": 6016, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6015, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6025, "src": "4552:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6014, "name": "string", "nodeType": "ElementaryTypeName", "src": "4552:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4551:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6044, "nodeType": "FunctionDefinition", "src": "4637:173:8", "nodes": [], "body": { "id": 6043, "nodeType": "Block", "src": "4746:64:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6038, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6027, "src": "4783:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6039, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6029, "src": "4792:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6040, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6031, "src": "4797:5:8", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_address", "typeString": "address" } ], "expression": { "id": 6036, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4763:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6037, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4766:16:8", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8770, "src": "4763:19:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_address_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,address) external returns (string memory)" } }, "id": 6041, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4763:40:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6035, "id": 6042, "nodeType": "Return", "src": "4756:47:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "4646:9:8", "parameters": { "id": 6032, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6027, "mutability": "mutable", "name": "jsonKey", "nameLocation": "4670:7:8", "nodeType": "VariableDeclaration", "scope": 6044, "src": "4656:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6026, "name": "string", "nodeType": "ElementaryTypeName", "src": "4656:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6029, "mutability": "mutable", "name": "key", "nameLocation": "4693:3:8", "nodeType": "VariableDeclaration", "scope": 6044, "src": "4679:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6028, "name": "string", "nodeType": "ElementaryTypeName", "src": "4679:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6031, "mutability": "mutable", "name": "value", "nameLocation": "4706:5:8", "nodeType": "VariableDeclaration", "scope": 6044, "src": "4698:13:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 6030, "name": "address", "nodeType": "ElementaryTypeName", "src": "4698:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "4655:57:8" }, "returnParameters": { "id": 6035, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6034, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6044, "src": "4731:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6033, "name": "string", "nodeType": "ElementaryTypeName", "src": "4731:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4730:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6064, "nodeType": "FunctionDefinition", "src": "4816:202:8", "nodes": [], "body": { "id": 6063, "nodeType": "Block", "src": "4954:64:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6058, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6046, "src": "4991:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6059, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6048, "src": "5000:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6060, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6051, "src": "5005:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[] memory" } ], "expression": { "id": 6056, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "4971:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "4974:16:8", "memberName": "serializeAddress", "nodeType": "MemberAccess", "referencedDeclaration": 8851, "src": "4971:19:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,address[] memory) external returns (string memory)" } }, "id": 6061, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4971:40:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6055, "id": 6062, "nodeType": "Return", "src": "4964:47:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "4825:9:8", "parameters": { "id": 6052, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6046, "mutability": "mutable", "name": "jsonKey", "nameLocation": "4849:7:8", "nodeType": "VariableDeclaration", "scope": 6064, "src": "4835:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6045, "name": "string", "nodeType": "ElementaryTypeName", "src": "4835:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6048, "mutability": "mutable", "name": "key", "nameLocation": "4872:3:8", "nodeType": "VariableDeclaration", "scope": 6064, "src": "4858:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6047, "name": "string", "nodeType": "ElementaryTypeName", "src": "4858:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6051, "mutability": "mutable", "name": "value", "nameLocation": "4894:5:8", "nodeType": "VariableDeclaration", "scope": 6064, "src": "4877:22:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", "typeString": "address[]" }, "typeName": { "baseType": { "id": 6049, "name": "address", "nodeType": "ElementaryTypeName", "src": "4877:7:8", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "id": 6050, "nodeType": "ArrayTypeName", "src": "4877:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" } }, "visibility": "internal" } ], "src": "4834:66:8" }, "returnParameters": { "id": 6055, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6054, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6064, "src": "4935:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6053, "name": "string", "nodeType": "ElementaryTypeName", "src": "4935:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "4934:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6083, "nodeType": "FunctionDefinition", "src": "5024:173:8", "nodes": [], "body": { "id": 6082, "nodeType": "Block", "src": "5133:64:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6077, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6066, "src": "5170:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6078, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6068, "src": "5179:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6079, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6070, "src": "5184:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } ], "expression": { "id": 6075, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "5150:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6076, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "5153:16:8", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8781, "src": "5150:19:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes32_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bytes32) external returns (string memory)" } }, "id": 6080, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5150:40:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6074, "id": 6081, "nodeType": "Return", "src": "5143:47:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "5033:9:8", "parameters": { "id": 6071, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6066, "mutability": "mutable", "name": "jsonKey", "nameLocation": "5057:7:8", "nodeType": "VariableDeclaration", "scope": 6083, "src": "5043:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6065, "name": "string", "nodeType": "ElementaryTypeName", "src": "5043:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6068, "mutability": "mutable", "name": "key", "nameLocation": "5080:3:8", "nodeType": "VariableDeclaration", "scope": 6083, "src": "5066:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6067, "name": "string", "nodeType": "ElementaryTypeName", "src": "5066:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6070, "mutability": "mutable", "name": "value", "nameLocation": "5093:5:8", "nodeType": "VariableDeclaration", "scope": 6083, "src": "5085:13:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 6069, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5085:7:8", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "5042:57:8" }, "returnParameters": { "id": 6074, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6073, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6083, "src": "5118:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6072, "name": "string", "nodeType": "ElementaryTypeName", "src": "5118:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5117:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6103, "nodeType": "FunctionDefinition", "src": "5203:202:8", "nodes": [], "body": { "id": 6102, "nodeType": "Block", "src": "5341:64:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6097, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6085, "src": "5378:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6098, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6087, "src": "5387:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6099, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6090, "src": "5392:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[] memory" } ], "expression": { "id": 6095, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "5358:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6096, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "5361:16:8", "memberName": "serializeBytes32", "nodeType": "MemberAccess", "referencedDeclaration": 8863, "src": "5358:19:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bytes32[] memory) external returns (string memory)" } }, "id": 6100, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5358:40:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6094, "id": 6101, "nodeType": "Return", "src": "5351:47:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "5212:9:8", "parameters": { "id": 6091, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6085, "mutability": "mutable", "name": "jsonKey", "nameLocation": "5236:7:8", "nodeType": "VariableDeclaration", "scope": 6103, "src": "5222:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6084, "name": "string", "nodeType": "ElementaryTypeName", "src": "5222:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6087, "mutability": "mutable", "name": "key", "nameLocation": "5259:3:8", "nodeType": "VariableDeclaration", "scope": 6103, "src": "5245:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6086, "name": "string", "nodeType": "ElementaryTypeName", "src": "5245:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6090, "mutability": "mutable", "name": "value", "nameLocation": "5281:5:8", "nodeType": "VariableDeclaration", "scope": 6103, "src": "5264:22:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", "typeString": "bytes32[]" }, "typeName": { "baseType": { "id": 6088, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "5264:7:8", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "id": 6089, "nodeType": "ArrayTypeName", "src": "5264:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", "typeString": "bytes32[]" } }, "visibility": "internal" } ], "src": "5221:66:8" }, "returnParameters": { "id": 6094, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6093, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6103, "src": "5322:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6092, "name": "string", "nodeType": "ElementaryTypeName", "src": "5322:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5321:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6122, "nodeType": "FunctionDefinition", "src": "5411:176:8", "nodes": [], "body": { "id": 6121, "nodeType": "Block", "src": "5525:62:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6116, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6105, "src": "5560:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6117, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6107, "src": "5569:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6118, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6109, "src": "5574:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "expression": { "id": 6114, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "5542:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "5545:14:8", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8803, "src": "5542:17:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bytes memory) external returns (string memory)" } }, "id": 6119, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5542:38:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6113, "id": 6120, "nodeType": "Return", "src": "5535:45:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "5420:9:8", "parameters": { "id": 6110, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6105, "mutability": "mutable", "name": "jsonKey", "nameLocation": "5444:7:8", "nodeType": "VariableDeclaration", "scope": 6122, "src": "5430:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6104, "name": "string", "nodeType": "ElementaryTypeName", "src": "5430:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6107, "mutability": "mutable", "name": "key", "nameLocation": "5467:3:8", "nodeType": "VariableDeclaration", "scope": 6122, "src": "5453:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6106, "name": "string", "nodeType": "ElementaryTypeName", "src": "5453:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6109, "mutability": "mutable", "name": "value", "nameLocation": "5485:5:8", "nodeType": "VariableDeclaration", "scope": 6122, "src": "5472:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 6108, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5472:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "src": "5429:62:8" }, "returnParameters": { "id": 6113, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6112, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6122, "src": "5510:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6111, "name": "string", "nodeType": "ElementaryTypeName", "src": "5510:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5509:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6142, "nodeType": "FunctionDefinition", "src": "5593:198:8", "nodes": [], "body": { "id": 6141, "nodeType": "Block", "src": "5729:62:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6136, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6124, "src": "5764:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6137, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6126, "src": "5773:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6138, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6129, "src": "5778:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", "typeString": "bytes memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", "typeString": "bytes memory[] memory" } ], "expression": { "id": 6134, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "5746:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6135, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "5749:14:8", "memberName": "serializeBytes", "nodeType": "MemberAccess", "referencedDeclaration": 8887, "src": "5746:17:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,bytes memory[] memory) external returns (string memory)" } }, "id": 6139, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5746:38:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6133, "id": 6140, "nodeType": "Return", "src": "5739:45:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "5602:9:8", "parameters": { "id": 6130, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6124, "mutability": "mutable", "name": "jsonKey", "nameLocation": "5626:7:8", "nodeType": "VariableDeclaration", "scope": 6142, "src": "5612:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6123, "name": "string", "nodeType": "ElementaryTypeName", "src": "5612:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6126, "mutability": "mutable", "name": "key", "nameLocation": "5649:3:8", "nodeType": "VariableDeclaration", "scope": 6142, "src": "5635:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6125, "name": "string", "nodeType": "ElementaryTypeName", "src": "5635:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6129, "mutability": "mutable", "name": "value", "nameLocation": "5669:5:8", "nodeType": "VariableDeclaration", "scope": 6142, "src": "5654:20:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", "typeString": "bytes[]" }, "typeName": { "baseType": { "id": 6127, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "5654:5:8", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "id": 6128, "nodeType": "ArrayTypeName", "src": "5654:7:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", "typeString": "bytes[]" } }, "visibility": "internal" } ], "src": "5611:64:8" }, "returnParameters": { "id": 6133, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6132, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6142, "src": "5710:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6131, "name": "string", "nodeType": "ElementaryTypeName", "src": "5710:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5709:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6161, "nodeType": "FunctionDefinition", "src": "5797:198:8", "nodes": [], "body": { "id": 6160, "nodeType": "Block", "src": "5932:63:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6155, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6144, "src": "5968:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6156, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6146, "src": "5977:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6157, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6148, "src": "5982:5:8", "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" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 6153, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "5949:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6154, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "5952:15:8", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8792, "src": "5949:18:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,string memory) external returns (string memory)" } }, "id": 6158, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5949:39:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6152, "id": 6159, "nodeType": "Return", "src": "5942:46:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "5806:9:8", "parameters": { "id": 6149, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6144, "mutability": "mutable", "name": "jsonKey", "nameLocation": "5830:7:8", "nodeType": "VariableDeclaration", "scope": 6161, "src": "5816:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6143, "name": "string", "nodeType": "ElementaryTypeName", "src": "5816:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6146, "mutability": "mutable", "name": "key", "nameLocation": "5853:3:8", "nodeType": "VariableDeclaration", "scope": 6161, "src": "5839:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6145, "name": "string", "nodeType": "ElementaryTypeName", "src": "5839:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6148, "mutability": "mutable", "name": "value", "nameLocation": "5872:5:8", "nodeType": "VariableDeclaration", "scope": 6161, "src": "5858:19:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6147, "name": "string", "nodeType": "ElementaryTypeName", "src": "5858:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5815:63:8" }, "returnParameters": { "id": 6152, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6151, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6161, "src": "5913:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6150, "name": "string", "nodeType": "ElementaryTypeName", "src": "5913:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "5912:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6181, "nodeType": "FunctionDefinition", "src": "6001:200:8", "nodes": [], "body": { "id": 6180, "nodeType": "Block", "src": "6138:63:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6175, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6163, "src": "6174:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6176, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6165, "src": "6183:3:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6177, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6168, "src": "6188:5:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", "typeString": "string memory[] memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" }, { "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", "typeString": "string memory[] memory" } ], "expression": { "id": 6173, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "6155:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6174, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "6158:15:8", "memberName": "serializeString", "nodeType": "MemberAccess", "referencedDeclaration": 8875, "src": "6155:18:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$", "typeString": "function (string memory,string memory,string memory[] memory) external returns (string memory)" } }, "id": 6178, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6155:39:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 6172, "id": 6179, "nodeType": "Return", "src": "6148:46:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "serialize", "nameLocation": "6010:9:8", "parameters": { "id": 6169, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6163, "mutability": "mutable", "name": "jsonKey", "nameLocation": "6034:7:8", "nodeType": "VariableDeclaration", "scope": 6181, "src": "6020:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6162, "name": "string", "nodeType": "ElementaryTypeName", "src": "6020:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6165, "mutability": "mutable", "name": "key", "nameLocation": "6057:3:8", "nodeType": "VariableDeclaration", "scope": 6181, "src": "6043:17:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6164, "name": "string", "nodeType": "ElementaryTypeName", "src": "6043:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6168, "mutability": "mutable", "name": "value", "nameLocation": "6078:5:8", "nodeType": "VariableDeclaration", "scope": 6181, "src": "6062:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", "typeString": "string[]" }, "typeName": { "baseType": { "id": 6166, "name": "string", "nodeType": "ElementaryTypeName", "src": "6062:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "id": 6167, "nodeType": "ArrayTypeName", "src": "6062:8:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", "typeString": "string[]" } }, "visibility": "internal" } ], "src": "6019:65:8" }, "returnParameters": { "id": 6172, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6171, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 6181, "src": "6119:13:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6170, "name": "string", "nodeType": "ElementaryTypeName", "src": "6119:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "6118:15:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6196, "nodeType": "FunctionDefinition", "src": "6207:111:8", "nodes": [], "body": { "id": 6195, "nodeType": "Block", "src": "6274:44:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6191, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6183, "src": "6297:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6192, "name": "path", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6185, "src": "6306:4:8", "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": 6188, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "6284:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6190, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "6287:9:8", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8894, "src": "6284:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory) external" } }, "id": 6193, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6284:27:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 6194, "nodeType": "ExpressionStatement", "src": "6284:27:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "write", "nameLocation": "6216:5:8", "parameters": { "id": 6186, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6183, "mutability": "mutable", "name": "jsonKey", "nameLocation": "6236:7:8", "nodeType": "VariableDeclaration", "scope": 6196, "src": "6222:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6182, "name": "string", "nodeType": "ElementaryTypeName", "src": "6222:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6185, "mutability": "mutable", "name": "path", "nameLocation": "6259:4:8", "nodeType": "VariableDeclaration", "scope": 6196, "src": "6245:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6184, "name": "string", "nodeType": "ElementaryTypeName", "src": "6245:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "6221:43:8" }, "returnParameters": { "id": 6187, "nodeType": "ParameterList", "parameters": [], "src": "6274:0:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" }, { "id": 6214, "nodeType": "FunctionDefinition", "src": "6324:145:8", "nodes": [], "body": { "id": 6213, "nodeType": "Block", "src": "6415:54:8", "nodes": [], "statements": [ { "expression": { "arguments": [ { "id": 6208, "name": "jsonKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6198, "src": "6438:7:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6209, "name": "path", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6200, "src": "6447:4:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, { "id": 6210, "name": "valueKey", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 6202, "src": "6453:8:8", "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" }, { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } ], "expression": { "id": 6205, "name": "vm", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 5570, "src": "6425:2:8", "typeDescriptions": { "typeIdentifier": "t_contract$_VmSafe_$8931", "typeString": "contract VmSafe" } }, "id": 6207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberLocation": "6428:9:8", "memberName": "writeJson", "nodeType": "MemberAccess", "referencedDeclaration": 8903, "src": "6425:12:8", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory,string memory) external" } }, "id": 6211, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "6425:37:8", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 6212, "nodeType": "ExpressionStatement", "src": "6425:37:8" } ] }, "implemented": true, "kind": "function", "modifiers": [], "name": "write", "nameLocation": "6333:5:8", "parameters": { "id": 6203, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 6198, "mutability": "mutable", "name": "jsonKey", "nameLocation": "6353:7:8", "nodeType": "VariableDeclaration", "scope": 6214, "src": "6339:21:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6197, "name": "string", "nodeType": "ElementaryTypeName", "src": "6339:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6200, "mutability": "mutable", "name": "path", "nameLocation": "6376:4:8", "nodeType": "VariableDeclaration", "scope": 6214, "src": "6362:18:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6199, "name": "string", "nodeType": "ElementaryTypeName", "src": "6362:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" }, { "constant": false, "id": 6202, "mutability": "mutable", "name": "valueKey", "nameLocation": "6396:8:8", "nodeType": "VariableDeclaration", "scope": 6214, "src": "6382:22:8", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 6201, "name": "string", "nodeType": "ElementaryTypeName", "src": "6382:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "6338:67:8" }, "returnParameters": { "id": 6204, "nodeType": "ParameterList", "parameters": [], "src": "6415:0:8" }, "scope": 6215, "stateMutability": "nonpayable", "virtual": false, "visibility": "internal" } ], "abstract": false, "baseContracts": [], "canonicalName": "stdJson", "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, "linearizedBaseContracts": [ 6215 ], "name": "stdJson", "nameLocation": "824:7:8", "scope": 6216, "usedErrors": [] } ], "license": "MIT" }, "id": 8 }