{"abi":[],"bytecode":{"object":"0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205b5f213da80aa6afe9d7b00a151003c27debb399bc9ddebd0515a807a04d767964736f6c63430008180033","sourceMap":"830:5659:156:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;830:5659:156;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205b5f213da80aa6afe9d7b00a151003c27debb399bc9ddebd0515a807a04d767964736f6c63430008180033","sourceMap":"830:5659:156:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/forge-std/src/StdJson.sol\":\"stdJson\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":base/=src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f\",\"dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz\"]},\"node_modules/forge-std/src/Vm.sol\":{\"keccak256\":\"0xe0cfe5ca62fb9d9366be870999bd82802d6b913c1f960f67b8f17060008f2d1a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ddadc1e899953cb26e7d87c0f27284d02f09b611cfd3300e321c33dc2c65d0b3\",\"dweb:/ipfs/Qmbmrdph3D5YweihJSPM6sopZcSKWMox2ZM89dyonfhrq8\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/","@latticexyz/=node_modules/@latticexyz/","@openzeppelin/=node_modules/@openzeppelin/","base/=src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","solmate/=node_modules/solmate/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/forge-std/src/StdJson.sol":"stdJson"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/forge-std/src/StdJson.sol":{"keccak256":"0x113bce4d6d0fe7c4e1e3bf2760ba21c075448660a8dae6003f27b9ff86890612","urls":["bzz-raw://8c8a169ea47398b475696e66d07e354d9997680b5f954418caeeaec5427a131f","dweb:/ipfs/QmSTK6XmjgYZ2CCGZ87AVTowNL3UWfRvqhT6DTbZoKyJzz"],"license":"MIT"},"node_modules/forge-std/src/Vm.sol":{"keccak256":"0xe0cfe5ca62fb9d9366be870999bd82802d6b913c1f960f67b8f17060008f2d1a","urls":["bzz-raw://ddadc1e899953cb26e7d87c0f27284d02f09b611cfd3300e321c33dc2c65d0b3","dweb:/ipfs/Qmbmrdph3D5YweihJSPM6sopZcSKWMox2ZM89dyonfhrq8"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"node_modules/forge-std/src/StdJson.sol","id":66122,"exportedSymbols":{"VmSafe":[69547],"stdJson":[66121]},"nodeType":"SourceUnit","src":"32:6458:156","nodes":[{"id":65456,"nodeType":"PragmaDirective","src":"32:31:156","nodes":[],"literals":["solidity",">=","0.6",".0","<","0.9",".0"]},{"id":65457,"nodeType":"PragmaDirective","src":"65:33:156","nodes":[],"literals":["experimental","ABIEncoderV2"]},{"id":65459,"nodeType":"ImportDirective","src":"100:32:156","nodes":[],"absolutePath":"node_modules/forge-std/src/Vm.sol","file":"./Vm.sol","nameLocation":"-1:-1:-1","scope":66122,"sourceUnit":69873,"symbolAliases":[{"foreign":{"id":65458,"name":"VmSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"108:6:156","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66121,"nodeType":"ContractDefinition","src":"830:5659:156","nodes":[{"id":65476,"nodeType":"VariableDeclaration","src":"852:92:156","nodes":[],"constant":true,"mutability":"constant","name":"vm","nameLocation":"876:2:156","scope":66121,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"},"typeName":{"id":65461,"nodeType":"UserDefinedTypeName","pathNode":{"id":65460,"name":"VmSafe","nameLocations":["852:6:156"],"nodeType":"IdentifierPath","referencedDeclaration":69547,"src":"852:6:156"},"referencedDeclaration":69547,"src":"852:6:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"value":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"6865766d20636865617420636f6465","id":65470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"922:17:156","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":65469,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"912:9:156","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":65471,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"912:28:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":65468,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"904:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":65467,"name":"uint256","nodeType":"ElementaryTypeName","src":"904:7:156","typeDescriptions":{}}},"id":65472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"904:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"896:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":65465,"name":"uint160","nodeType":"ElementaryTypeName","src":"896:7:156","typeDescriptions":{}}},"id":65473,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"896:46:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":65464,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"888:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":65463,"name":"address","nodeType":"ElementaryTypeName","src":"888:7:156","typeDescriptions":{}}},"id":65474,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"888:55:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65462,"name":"VmSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"881:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_VmSafe_$69547_$","typeString":"type(contract VmSafe)"}},"id":65475,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"881:63:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"visibility":"private"},{"id":65492,"nodeType":"FunctionDefinition","src":"951:141:156","nodes":[],"body":{"id":65491,"nodeType":"Block","src":"1045:47:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65487,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65478,"src":"1075:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65488,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65480,"src":"1081:3:156","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":65485,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1062:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65486,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1065:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1062:12:156","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":65489,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1062:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":65484,"id":65490,"nodeType":"Return","src":"1055:30:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"parseRaw","nameLocation":"960:8:156","parameters":{"id":65481,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65478,"mutability":"mutable","name":"json","nameLocation":"983:4:156","nodeType":"VariableDeclaration","scope":65492,"src":"969:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65477,"name":"string","nodeType":"ElementaryTypeName","src":"969:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65480,"mutability":"mutable","name":"key","nameLocation":"1003:3:156","nodeType":"VariableDeclaration","scope":65492,"src":"989:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65479,"name":"string","nodeType":"ElementaryTypeName","src":"989:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"968:39:156"},"returnParameters":{"id":65484,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65483,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65492,"src":"1031:12:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65482,"name":"bytes","nodeType":"ElementaryTypeName","src":"1031:5:156","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1030:14:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65514,"nodeType":"FunctionDefinition","src":"1098:159:156","nodes":[],"body":{"id":65513,"nodeType":"Block","src":"1187:70:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65505,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65494,"src":"1228:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65506,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65496,"src":"1234:3:156","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":65503,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1215:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65504,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1218:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1215:12:156","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":65507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1215:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65509,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1241:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":65508,"name":"uint256","nodeType":"ElementaryTypeName","src":"1241:7:156","typeDescriptions":{}}}],"id":65510,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1240:9:156","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":65501,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1204:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65502,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1208:6:156","memberName":"decode","nodeType":"MemberAccess","src":"1204:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65511,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1204:46:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":65500,"id":65512,"nodeType":"Return","src":"1197:53:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readUint","nameLocation":"1107:8:156","parameters":{"id":65497,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65494,"mutability":"mutable","name":"json","nameLocation":"1130:4:156","nodeType":"VariableDeclaration","scope":65514,"src":"1116:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65493,"name":"string","nodeType":"ElementaryTypeName","src":"1116:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65496,"mutability":"mutable","name":"key","nameLocation":"1150:3:156","nodeType":"VariableDeclaration","scope":65514,"src":"1136:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65495,"name":"string","nodeType":"ElementaryTypeName","src":"1136:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1115:39:156"},"returnParameters":{"id":65500,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65499,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65514,"src":"1178:7:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65498,"name":"uint256","nodeType":"ElementaryTypeName","src":"1178:7:156","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1177:9:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65538,"nodeType":"FunctionDefinition","src":"1263:175:156","nodes":[],"body":{"id":65537,"nodeType":"Block","src":"1366:72:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65528,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65516,"src":"1407:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65529,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65518,"src":"1413:3:156","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":65526,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1394:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1397:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1394:12:156","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":65530,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1394:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65532,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1420:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":65531,"name":"uint256","nodeType":"ElementaryTypeName","src":"1420:7:156","typeDescriptions":{}}},"id":65533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"1420:9:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"type(uint256[] memory)"}}],"id":65534,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1419:11:156","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":65524,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1383:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65525,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1387:6:156","memberName":"decode","nodeType":"MemberAccess","src":"1383:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1383:48:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"functionReturnParameters":65523,"id":65536,"nodeType":"Return","src":"1376:55:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readUintArray","nameLocation":"1272:13:156","parameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65516,"mutability":"mutable","name":"json","nameLocation":"1300:4:156","nodeType":"VariableDeclaration","scope":65538,"src":"1286:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65515,"name":"string","nodeType":"ElementaryTypeName","src":"1286:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65518,"mutability":"mutable","name":"key","nameLocation":"1320:3:156","nodeType":"VariableDeclaration","scope":65538,"src":"1306:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65517,"name":"string","nodeType":"ElementaryTypeName","src":"1306:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1285:39:156"},"returnParameters":{"id":65523,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65538,"src":"1348:16:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":65520,"name":"uint256","nodeType":"ElementaryTypeName","src":"1348:7:156","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65521,"nodeType":"ArrayTypeName","src":"1348:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"src":"1347:18:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65560,"nodeType":"FunctionDefinition","src":"1444:156:156","nodes":[],"body":{"id":65559,"nodeType":"Block","src":"1531:69:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65551,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"1572:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65552,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65542,"src":"1578:3:156","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":65549,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1559:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1562:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1559:12:156","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":65553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1559:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65555,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1585:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":65554,"name":"int256","nodeType":"ElementaryTypeName","src":"1585:6:156","typeDescriptions":{}}}],"id":65556,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1584:8:156","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":65547,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1548:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65548,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1552:6:156","memberName":"decode","nodeType":"MemberAccess","src":"1548:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1548:45:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"functionReturnParameters":65546,"id":65558,"nodeType":"Return","src":"1541:52:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readInt","nameLocation":"1453:7:156","parameters":{"id":65543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65540,"mutability":"mutable","name":"json","nameLocation":"1475:4:156","nodeType":"VariableDeclaration","scope":65560,"src":"1461:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65539,"name":"string","nodeType":"ElementaryTypeName","src":"1461:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65542,"mutability":"mutable","name":"key","nameLocation":"1495:3:156","nodeType":"VariableDeclaration","scope":65560,"src":"1481:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65541,"name":"string","nodeType":"ElementaryTypeName","src":"1481:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1460:39:156"},"returnParameters":{"id":65546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65560,"src":"1523:6:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65544,"name":"int256","nodeType":"ElementaryTypeName","src":"1523:6:156","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"1522:8:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65584,"nodeType":"FunctionDefinition","src":"1606:172:156","nodes":[],"body":{"id":65583,"nodeType":"Block","src":"1707:71:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65574,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65562,"src":"1748:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65575,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65564,"src":"1754:3:156","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":65572,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1735:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1738:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1735:12:156","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":65576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1735:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65578,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1761:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":65577,"name":"int256","nodeType":"ElementaryTypeName","src":"1761:6:156","typeDescriptions":{}}},"id":65579,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"1761:8:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_int256_$dyn_memory_ptr_$","typeString":"type(int256[] memory)"}}],"id":65580,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1760:10:156","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":65570,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1724:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65571,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1728:6:156","memberName":"decode","nodeType":"MemberAccess","src":"1724:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1724:47:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_memory_ptr","typeString":"int256[] memory"}},"functionReturnParameters":65569,"id":65582,"nodeType":"Return","src":"1717:54:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readIntArray","nameLocation":"1615:12:156","parameters":{"id":65565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65562,"mutability":"mutable","name":"json","nameLocation":"1642:4:156","nodeType":"VariableDeclaration","scope":65584,"src":"1628:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65561,"name":"string","nodeType":"ElementaryTypeName","src":"1628:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65564,"mutability":"mutable","name":"key","nameLocation":"1662:3:156","nodeType":"VariableDeclaration","scope":65584,"src":"1648:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65563,"name":"string","nodeType":"ElementaryTypeName","src":"1648:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1627:39:156"},"returnParameters":{"id":65569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65568,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65584,"src":"1690:15:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_memory_ptr","typeString":"int256[]"},"typeName":{"baseType":{"id":65566,"name":"int256","nodeType":"ElementaryTypeName","src":"1690:6:156","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":65567,"nodeType":"ArrayTypeName","src":"1690:8:156","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_storage_ptr","typeString":"int256[]"}},"visibility":"internal"}],"src":"1689:17:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65606,"nodeType":"FunctionDefinition","src":"1784:162:156","nodes":[],"body":{"id":65605,"nodeType":"Block","src":"1876:70:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65597,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65586,"src":"1917:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65598,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65588,"src":"1923:3:156","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":65595,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"1904:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65596,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1907:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"1904:12:156","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":65599,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1904:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65601,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1930:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":65600,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1930:7:156","typeDescriptions":{}}}],"id":65602,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1929:9:156","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":65593,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1893:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65594,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1897:6:156","memberName":"decode","nodeType":"MemberAccess","src":"1893:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65603,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1893:46:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":65592,"id":65604,"nodeType":"Return","src":"1886:53:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBytes32","nameLocation":"1793:11:156","parameters":{"id":65589,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65586,"mutability":"mutable","name":"json","nameLocation":"1819:4:156","nodeType":"VariableDeclaration","scope":65606,"src":"1805:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65585,"name":"string","nodeType":"ElementaryTypeName","src":"1805:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"key","nameLocation":"1839:3:156","nodeType":"VariableDeclaration","scope":65606,"src":"1825:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65587,"name":"string","nodeType":"ElementaryTypeName","src":"1825:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1804:39:156"},"returnParameters":{"id":65592,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65591,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65606,"src":"1867:7:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":65590,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1867:7:156","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1866:9:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65630,"nodeType":"FunctionDefinition","src":"1952:178:156","nodes":[],"body":{"id":65629,"nodeType":"Block","src":"2058:72:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65620,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65608,"src":"2099:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65621,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65610,"src":"2105:3:156","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":65618,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2086:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2089:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2086:12:156","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":65622,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2086:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2112:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":65623,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2112:7:156","typeDescriptions":{}}},"id":65625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"2112:9:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"type(bytes32[] memory)"}}],"id":65626,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2111:11:156","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":65616,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2075:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65617,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2079:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2075:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2075:48:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"functionReturnParameters":65615,"id":65628,"nodeType":"Return","src":"2068:55:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBytes32Array","nameLocation":"1961:16:156","parameters":{"id":65611,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65608,"mutability":"mutable","name":"json","nameLocation":"1992:4:156","nodeType":"VariableDeclaration","scope":65630,"src":"1978:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65607,"name":"string","nodeType":"ElementaryTypeName","src":"1978:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"key","nameLocation":"2012:3:156","nodeType":"VariableDeclaration","scope":65630,"src":"1998:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65609,"name":"string","nodeType":"ElementaryTypeName","src":"1998:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1977:39:156"},"returnParameters":{"id":65615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65614,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65630,"src":"2040:16:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":65612,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2040:7:156","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":65613,"nodeType":"ArrayTypeName","src":"2040:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"2039:18:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65652,"nodeType":"FunctionDefinition","src":"2136:166:156","nodes":[],"body":{"id":65651,"nodeType":"Block","src":"2233:69:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65643,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65632,"src":"2274:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65644,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65634,"src":"2280:3:156","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":65641,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2261:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2264:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2261:12:156","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":65645,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2261:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2287:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":65646,"name":"string","nodeType":"ElementaryTypeName","src":"2287:6:156","typeDescriptions":{}}}],"id":65648,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2286:8:156","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":65639,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2250:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65640,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2254:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2250:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65649,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2250:45:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65638,"id":65650,"nodeType":"Return","src":"2243:52:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readString","nameLocation":"2145:10:156","parameters":{"id":65635,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65632,"mutability":"mutable","name":"json","nameLocation":"2170:4:156","nodeType":"VariableDeclaration","scope":65652,"src":"2156:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65631,"name":"string","nodeType":"ElementaryTypeName","src":"2156:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"key","nameLocation":"2190:3:156","nodeType":"VariableDeclaration","scope":65652,"src":"2176:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65633,"name":"string","nodeType":"ElementaryTypeName","src":"2176:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2155:39:156"},"returnParameters":{"id":65638,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65637,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65652,"src":"2218:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65636,"name":"string","nodeType":"ElementaryTypeName","src":"2218:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2217:15:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65676,"nodeType":"FunctionDefinition","src":"2308:175:156","nodes":[],"body":{"id":65675,"nodeType":"Block","src":"2412:71:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65666,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65654,"src":"2453:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65667,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65656,"src":"2459:3:156","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":65664,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2440:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65665,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2443:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2440:12:156","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":65668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2440:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65670,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2466:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":65669,"name":"string","nodeType":"ElementaryTypeName","src":"2466:6:156","typeDescriptions":{}}},"id":65671,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"2466:8:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"type(string memory[] memory)"}}],"id":65672,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2465:10:156","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":65662,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2429:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65663,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2433:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2429:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2429:47:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"functionReturnParameters":65661,"id":65674,"nodeType":"Return","src":"2422:54:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readStringArray","nameLocation":"2317:15:156","parameters":{"id":65657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65654,"mutability":"mutable","name":"json","nameLocation":"2347:4:156","nodeType":"VariableDeclaration","scope":65676,"src":"2333:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65653,"name":"string","nodeType":"ElementaryTypeName","src":"2333:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"key","nameLocation":"2367:3:156","nodeType":"VariableDeclaration","scope":65676,"src":"2353:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65655,"name":"string","nodeType":"ElementaryTypeName","src":"2353:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2332:39:156"},"returnParameters":{"id":65661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65660,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65676,"src":"2395:15:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":65658,"name":"string","nodeType":"ElementaryTypeName","src":"2395:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":65659,"nodeType":"ArrayTypeName","src":"2395:8:156","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"2394:17:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65698,"nodeType":"FunctionDefinition","src":"2489:162:156","nodes":[],"body":{"id":65697,"nodeType":"Block","src":"2581:70:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65689,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"2622:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65690,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"2628:3:156","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":65687,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2609:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2612:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2609:12:156","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":65691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2609:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65693,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2635:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":65692,"name":"address","nodeType":"ElementaryTypeName","src":"2635:7:156","typeDescriptions":{}}}],"id":65694,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2634:9:156","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":65685,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2598:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65686,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2602:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2598:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2598:46:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"functionReturnParameters":65684,"id":65696,"nodeType":"Return","src":"2591:53:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readAddress","nameLocation":"2498:11:156","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65678,"mutability":"mutable","name":"json","nameLocation":"2524:4:156","nodeType":"VariableDeclaration","scope":65698,"src":"2510:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65677,"name":"string","nodeType":"ElementaryTypeName","src":"2510:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65680,"mutability":"mutable","name":"key","nameLocation":"2544:3:156","nodeType":"VariableDeclaration","scope":65698,"src":"2530:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65679,"name":"string","nodeType":"ElementaryTypeName","src":"2530:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2509:39:156"},"returnParameters":{"id":65684,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65683,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65698,"src":"2572:7:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65682,"name":"address","nodeType":"ElementaryTypeName","src":"2572:7:156","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2571:9:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65722,"nodeType":"FunctionDefinition","src":"2657:178:156","nodes":[],"body":{"id":65721,"nodeType":"Block","src":"2763:72:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65712,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65700,"src":"2804:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65713,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65702,"src":"2810:3:156","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":65710,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2791:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2794:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2791:12:156","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":65714,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2791:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65716,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2817:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":65715,"name":"address","nodeType":"ElementaryTypeName","src":"2817:7:156","typeDescriptions":{}}},"id":65717,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"2817:9:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"type(address[] memory)"}}],"id":65718,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2816:11:156","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":65708,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2780:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65709,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2784:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2780:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65719,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2780:48:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"functionReturnParameters":65707,"id":65720,"nodeType":"Return","src":"2773:55:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readAddressArray","nameLocation":"2666:16:156","parameters":{"id":65703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65700,"mutability":"mutable","name":"json","nameLocation":"2697:4:156","nodeType":"VariableDeclaration","scope":65722,"src":"2683:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65699,"name":"string","nodeType":"ElementaryTypeName","src":"2683:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65702,"mutability":"mutable","name":"key","nameLocation":"2717:3:156","nodeType":"VariableDeclaration","scope":65722,"src":"2703:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65701,"name":"string","nodeType":"ElementaryTypeName","src":"2703:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2682:39:156"},"returnParameters":{"id":65707,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65706,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65722,"src":"2745:16:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":65704,"name":"address","nodeType":"ElementaryTypeName","src":"2745:7:156","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":65705,"nodeType":"ArrayTypeName","src":"2745:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"2744:18:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65744,"nodeType":"FunctionDefinition","src":"2841:153:156","nodes":[],"body":{"id":65743,"nodeType":"Block","src":"2927:67:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65735,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"2968:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65736,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"2974:3:156","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":65733,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"2955:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65734,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2958:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"2955:12:156","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":65737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2955:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65739,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2981:4:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":65738,"name":"bool","nodeType":"ElementaryTypeName","src":"2981:4:156","typeDescriptions":{}}}],"id":65740,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2980:6:156","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":65731,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2944:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65732,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2948:6:156","memberName":"decode","nodeType":"MemberAccess","src":"2944:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65741,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2944:43:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":65730,"id":65742,"nodeType":"Return","src":"2937:50:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBool","nameLocation":"2850:8:156","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65724,"mutability":"mutable","name":"json","nameLocation":"2873:4:156","nodeType":"VariableDeclaration","scope":65744,"src":"2859:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65723,"name":"string","nodeType":"ElementaryTypeName","src":"2859:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65726,"mutability":"mutable","name":"key","nameLocation":"2893:3:156","nodeType":"VariableDeclaration","scope":65744,"src":"2879:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65725,"name":"string","nodeType":"ElementaryTypeName","src":"2879:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2858:39:156"},"returnParameters":{"id":65730,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65729,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65744,"src":"2921:4:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65728,"name":"bool","nodeType":"ElementaryTypeName","src":"2921:4:156","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2920:6:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65768,"nodeType":"FunctionDefinition","src":"3000:169:156","nodes":[],"body":{"id":65767,"nodeType":"Block","src":"3100:69:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65758,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"3141:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65759,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"3147:3:156","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":65756,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"3128:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3131:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"3128:12:156","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":65760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3128:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65762,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3154:4:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":65761,"name":"bool","nodeType":"ElementaryTypeName","src":"3154:4:156","typeDescriptions":{}}},"id":65763,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"3154:6:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_bool_$dyn_memory_ptr_$","typeString":"type(bool[] memory)"}}],"id":65764,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"3153:8:156","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":65754,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3117:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3121:6:156","memberName":"decode","nodeType":"MemberAccess","src":"3117:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3117:45:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_memory_ptr","typeString":"bool[] memory"}},"functionReturnParameters":65753,"id":65766,"nodeType":"Return","src":"3110:52:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBoolArray","nameLocation":"3009:13:156","parameters":{"id":65749,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65746,"mutability":"mutable","name":"json","nameLocation":"3037:4:156","nodeType":"VariableDeclaration","scope":65768,"src":"3023:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65745,"name":"string","nodeType":"ElementaryTypeName","src":"3023:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65748,"mutability":"mutable","name":"key","nameLocation":"3057:3:156","nodeType":"VariableDeclaration","scope":65768,"src":"3043:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65747,"name":"string","nodeType":"ElementaryTypeName","src":"3043:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3022:39:156"},"returnParameters":{"id":65753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65752,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65768,"src":"3085:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_memory_ptr","typeString":"bool[]"},"typeName":{"baseType":{"id":65750,"name":"bool","nodeType":"ElementaryTypeName","src":"3085:4:156","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":65751,"nodeType":"ArrayTypeName","src":"3085:6:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_storage_ptr","typeString":"bool[]"}},"visibility":"internal"}],"src":"3084:15:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65790,"nodeType":"FunctionDefinition","src":"3175:163:156","nodes":[],"body":{"id":65789,"nodeType":"Block","src":"3270:68:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65781,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65770,"src":"3311:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65782,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65772,"src":"3317:3:156","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":65779,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"3298:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3301:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"3298:12:156","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":65783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3298:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":65785,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3324:5:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":65784,"name":"bytes","nodeType":"ElementaryTypeName","src":"3324:5:156","typeDescriptions":{}}}],"id":65786,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"3323:7:156","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":65777,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3287:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65778,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3291:6:156","memberName":"decode","nodeType":"MemberAccess","src":"3287:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3287:44:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":65776,"id":65788,"nodeType":"Return","src":"3280:51:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBytes","nameLocation":"3184:9:156","parameters":{"id":65773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"mutability":"mutable","name":"json","nameLocation":"3208:4:156","nodeType":"VariableDeclaration","scope":65790,"src":"3194:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65769,"name":"string","nodeType":"ElementaryTypeName","src":"3194:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65772,"mutability":"mutable","name":"key","nameLocation":"3228:3:156","nodeType":"VariableDeclaration","scope":65790,"src":"3214:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65771,"name":"string","nodeType":"ElementaryTypeName","src":"3214:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3193:39:156"},"returnParameters":{"id":65776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65775,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65790,"src":"3256:12:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65774,"name":"bytes","nodeType":"ElementaryTypeName","src":"3256:5:156","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3255:14:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65814,"nodeType":"FunctionDefinition","src":"3344:172:156","nodes":[],"body":{"id":65813,"nodeType":"Block","src":"3446:70:156","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65804,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65792,"src":"3487:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65805,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65794,"src":"3493:3:156","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":65802,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"3474:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3477:9:156","memberName":"parseJson","nodeType":"MemberAccess","referencedDeclaration":69196,"src":"3474:12:156","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":65806,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3474:23:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":65808,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3500:5:156","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":65807,"name":"bytes","nodeType":"ElementaryTypeName","src":"3500:5:156","typeDescriptions":{}}},"id":65809,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"3500:7:156","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$","typeString":"type(bytes memory[] memory)"}}],"id":65810,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"3499:9:156","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":65800,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3463:3:156","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":65801,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3467:6:156","memberName":"decode","nodeType":"MemberAccess","src":"3463:10:156","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":65811,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3463:46:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"functionReturnParameters":65799,"id":65812,"nodeType":"Return","src":"3456:53:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"readBytesArray","nameLocation":"3353:14:156","parameters":{"id":65795,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65792,"mutability":"mutable","name":"json","nameLocation":"3382:4:156","nodeType":"VariableDeclaration","scope":65814,"src":"3368:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65791,"name":"string","nodeType":"ElementaryTypeName","src":"3368:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65794,"mutability":"mutable","name":"key","nameLocation":"3402:3:156","nodeType":"VariableDeclaration","scope":65814,"src":"3388:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65793,"name":"string","nodeType":"ElementaryTypeName","src":"3388:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3367:39:156"},"returnParameters":{"id":65799,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65798,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65814,"src":"3430:14:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":65796,"name":"bytes","nodeType":"ElementaryTypeName","src":"3430:5:156","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":65797,"nodeType":"ArrayTypeName","src":"3430:7:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"3429:16:156"},"scope":66121,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65833,"nodeType":"FunctionDefinition","src":"3522:167:156","nodes":[],"body":{"id":65832,"nodeType":"Block","src":"3628:61:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65827,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65816,"src":"3662:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65828,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65818,"src":"3671:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65829,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65820,"src":"3676:5:156","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":65825,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"3645:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3648:13:156","memberName":"serializeBool","nodeType":"MemberAccess","referencedDeclaration":69347,"src":"3645:16:156","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":65830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3645:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65824,"id":65831,"nodeType":"Return","src":"3638:44:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"3531:9:156","parameters":{"id":65821,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65816,"mutability":"mutable","name":"jsonKey","nameLocation":"3555:7:156","nodeType":"VariableDeclaration","scope":65833,"src":"3541:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65815,"name":"string","nodeType":"ElementaryTypeName","src":"3541:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65818,"mutability":"mutable","name":"key","nameLocation":"3578:3:156","nodeType":"VariableDeclaration","scope":65833,"src":"3564:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65817,"name":"string","nodeType":"ElementaryTypeName","src":"3564:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65820,"mutability":"mutable","name":"value","nameLocation":"3588:5:156","nodeType":"VariableDeclaration","scope":65833,"src":"3583:10:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65819,"name":"bool","nodeType":"ElementaryTypeName","src":"3583:4:156","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3540:54:156"},"returnParameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65823,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65833,"src":"3613:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65822,"name":"string","nodeType":"ElementaryTypeName","src":"3613:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3612:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65853,"nodeType":"FunctionDefinition","src":"3695:196:156","nodes":[],"body":{"id":65852,"nodeType":"Block","src":"3830:61:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65847,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65835,"src":"3864:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65848,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65837,"src":"3873:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65849,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65840,"src":"3878:5:156","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":65845,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"3847:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3850:13:156","memberName":"serializeBool","nodeType":"MemberAccess","referencedDeclaration":69425,"src":"3847:16:156","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":65850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3847:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65844,"id":65851,"nodeType":"Return","src":"3840:44:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"3704:9:156","parameters":{"id":65841,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65835,"mutability":"mutable","name":"jsonKey","nameLocation":"3728:7:156","nodeType":"VariableDeclaration","scope":65853,"src":"3714:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65834,"name":"string","nodeType":"ElementaryTypeName","src":"3714:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65837,"mutability":"mutable","name":"key","nameLocation":"3751:3:156","nodeType":"VariableDeclaration","scope":65853,"src":"3737:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65836,"name":"string","nodeType":"ElementaryTypeName","src":"3737:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65840,"mutability":"mutable","name":"value","nameLocation":"3770:5:156","nodeType":"VariableDeclaration","scope":65853,"src":"3756:19:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_memory_ptr","typeString":"bool[]"},"typeName":{"baseType":{"id":65838,"name":"bool","nodeType":"ElementaryTypeName","src":"3756:4:156","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":65839,"nodeType":"ArrayTypeName","src":"3756:6:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_storage_ptr","typeString":"bool[]"}},"visibility":"internal"}],"src":"3713:63:156"},"returnParameters":{"id":65844,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65853,"src":"3811:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65842,"name":"string","nodeType":"ElementaryTypeName","src":"3811:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3810:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65872,"nodeType":"FunctionDefinition","src":"3897:170:156","nodes":[],"body":{"id":65871,"nodeType":"Block","src":"4006:61:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65866,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"4040:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65867,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65857,"src":"4049:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65868,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65859,"src":"4054:5:156","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":65864,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4023:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4026:13:156","memberName":"serializeUint","nodeType":"MemberAccess","referencedDeclaration":69358,"src":"4023:16:156","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":65869,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4023:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65863,"id":65870,"nodeType":"Return","src":"4016:44:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"3906:9:156","parameters":{"id":65860,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65855,"mutability":"mutable","name":"jsonKey","nameLocation":"3930:7:156","nodeType":"VariableDeclaration","scope":65872,"src":"3916:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65854,"name":"string","nodeType":"ElementaryTypeName","src":"3916:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65857,"mutability":"mutable","name":"key","nameLocation":"3953:3:156","nodeType":"VariableDeclaration","scope":65872,"src":"3939:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65856,"name":"string","nodeType":"ElementaryTypeName","src":"3939:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65859,"mutability":"mutable","name":"value","nameLocation":"3966:5:156","nodeType":"VariableDeclaration","scope":65872,"src":"3958:13:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65858,"name":"uint256","nodeType":"ElementaryTypeName","src":"3958:7:156","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3915:57:156"},"returnParameters":{"id":65863,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65862,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65872,"src":"3991:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65861,"name":"string","nodeType":"ElementaryTypeName","src":"3991:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3990:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65892,"nodeType":"FunctionDefinition","src":"4073:199:156","nodes":[],"body":{"id":65891,"nodeType":"Block","src":"4211:61:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65886,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65874,"src":"4245:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65887,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65876,"src":"4254:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65888,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65879,"src":"4259:5:156","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":65884,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4228:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4231:13:156","memberName":"serializeUint","nodeType":"MemberAccess","referencedDeclaration":69437,"src":"4228:16:156","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":65889,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4228:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65883,"id":65890,"nodeType":"Return","src":"4221:44:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"4082:9:156","parameters":{"id":65880,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65874,"mutability":"mutable","name":"jsonKey","nameLocation":"4106:7:156","nodeType":"VariableDeclaration","scope":65892,"src":"4092:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65873,"name":"string","nodeType":"ElementaryTypeName","src":"4092:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65876,"mutability":"mutable","name":"key","nameLocation":"4129:3:156","nodeType":"VariableDeclaration","scope":65892,"src":"4115:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65875,"name":"string","nodeType":"ElementaryTypeName","src":"4115:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65879,"mutability":"mutable","name":"value","nameLocation":"4151:5:156","nodeType":"VariableDeclaration","scope":65892,"src":"4134:22:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"4134:7:156","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65878,"nodeType":"ArrayTypeName","src":"4134:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"src":"4091:66:156"},"returnParameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65882,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65892,"src":"4192:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65881,"name":"string","nodeType":"ElementaryTypeName","src":"4192:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4191:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65911,"nodeType":"FunctionDefinition","src":"4278:168:156","nodes":[],"body":{"id":65910,"nodeType":"Block","src":"4386:60:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65905,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65894,"src":"4419:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65906,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"4428:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65907,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65898,"src":"4433:5:156","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":65903,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4403:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4406:12:156","memberName":"serializeInt","nodeType":"MemberAccess","referencedDeclaration":69369,"src":"4403:15:156","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":65908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4403:36:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65902,"id":65909,"nodeType":"Return","src":"4396:43:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"4287:9:156","parameters":{"id":65899,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65894,"mutability":"mutable","name":"jsonKey","nameLocation":"4311:7:156","nodeType":"VariableDeclaration","scope":65911,"src":"4297:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65893,"name":"string","nodeType":"ElementaryTypeName","src":"4297:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65896,"mutability":"mutable","name":"key","nameLocation":"4334:3:156","nodeType":"VariableDeclaration","scope":65911,"src":"4320:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65895,"name":"string","nodeType":"ElementaryTypeName","src":"4320:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65898,"mutability":"mutable","name":"value","nameLocation":"4346:5:156","nodeType":"VariableDeclaration","scope":65911,"src":"4339:12:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65897,"name":"int256","nodeType":"ElementaryTypeName","src":"4339:6:156","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4296:56:156"},"returnParameters":{"id":65902,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65901,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65911,"src":"4371:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65900,"name":"string","nodeType":"ElementaryTypeName","src":"4371:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4370:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65931,"nodeType":"FunctionDefinition","src":"4452:197:156","nodes":[],"body":{"id":65930,"nodeType":"Block","src":"4589:60:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65925,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65913,"src":"4622:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65926,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65915,"src":"4631:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65927,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"4636:5:156","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":65923,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4606:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65924,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4609:12:156","memberName":"serializeInt","nodeType":"MemberAccess","referencedDeclaration":69449,"src":"4606:15:156","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":65928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4606:36:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65922,"id":65929,"nodeType":"Return","src":"4599:43:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"4461:9:156","parameters":{"id":65919,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65913,"mutability":"mutable","name":"jsonKey","nameLocation":"4485:7:156","nodeType":"VariableDeclaration","scope":65931,"src":"4471:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65912,"name":"string","nodeType":"ElementaryTypeName","src":"4471:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65915,"mutability":"mutable","name":"key","nameLocation":"4508:3:156","nodeType":"VariableDeclaration","scope":65931,"src":"4494:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65914,"name":"string","nodeType":"ElementaryTypeName","src":"4494:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65918,"mutability":"mutable","name":"value","nameLocation":"4529:5:156","nodeType":"VariableDeclaration","scope":65931,"src":"4513:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_memory_ptr","typeString":"int256[]"},"typeName":{"baseType":{"id":65916,"name":"int256","nodeType":"ElementaryTypeName","src":"4513:6:156","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":65917,"nodeType":"ArrayTypeName","src":"4513:8:156","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_storage_ptr","typeString":"int256[]"}},"visibility":"internal"}],"src":"4470:65:156"},"returnParameters":{"id":65922,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65921,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65931,"src":"4570:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65920,"name":"string","nodeType":"ElementaryTypeName","src":"4570:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4569:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65950,"nodeType":"FunctionDefinition","src":"4655:173:156","nodes":[],"body":{"id":65949,"nodeType":"Block","src":"4764:64:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65944,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"4801:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65945,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65935,"src":"4810:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65946,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65937,"src":"4815:5:156","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":65942,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4781:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4784:16:156","memberName":"serializeAddress","nodeType":"MemberAccess","referencedDeclaration":69380,"src":"4781:19:156","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":65947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4781:40:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65941,"id":65948,"nodeType":"Return","src":"4774:47:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"4664:9:156","parameters":{"id":65938,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65933,"mutability":"mutable","name":"jsonKey","nameLocation":"4688:7:156","nodeType":"VariableDeclaration","scope":65950,"src":"4674:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65932,"name":"string","nodeType":"ElementaryTypeName","src":"4674:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65935,"mutability":"mutable","name":"key","nameLocation":"4711:3:156","nodeType":"VariableDeclaration","scope":65950,"src":"4697:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65934,"name":"string","nodeType":"ElementaryTypeName","src":"4697:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65937,"mutability":"mutable","name":"value","nameLocation":"4724:5:156","nodeType":"VariableDeclaration","scope":65950,"src":"4716:13:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65936,"name":"address","nodeType":"ElementaryTypeName","src":"4716:7:156","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4673:57:156"},"returnParameters":{"id":65941,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65940,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65950,"src":"4749:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65939,"name":"string","nodeType":"ElementaryTypeName","src":"4749:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4748:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65970,"nodeType":"FunctionDefinition","src":"4834:202:156","nodes":[],"body":{"id":65969,"nodeType":"Block","src":"4972:64:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65964,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65952,"src":"5009:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65965,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65954,"src":"5018:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65966,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65957,"src":"5023:5:156","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":65962,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"4989:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4992:16:156","memberName":"serializeAddress","nodeType":"MemberAccess","referencedDeclaration":69461,"src":"4989:19:156","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":65967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4989:40:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65961,"id":65968,"nodeType":"Return","src":"4982:47:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"4843:9:156","parameters":{"id":65958,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65952,"mutability":"mutable","name":"jsonKey","nameLocation":"4867:7:156","nodeType":"VariableDeclaration","scope":65970,"src":"4853:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65951,"name":"string","nodeType":"ElementaryTypeName","src":"4853:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65954,"mutability":"mutable","name":"key","nameLocation":"4890:3:156","nodeType":"VariableDeclaration","scope":65970,"src":"4876:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65953,"name":"string","nodeType":"ElementaryTypeName","src":"4876:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65957,"mutability":"mutable","name":"value","nameLocation":"4912:5:156","nodeType":"VariableDeclaration","scope":65970,"src":"4895:22:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":65955,"name":"address","nodeType":"ElementaryTypeName","src":"4895:7:156","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":65956,"nodeType":"ArrayTypeName","src":"4895:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"4852:66:156"},"returnParameters":{"id":65961,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65960,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65970,"src":"4953:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65959,"name":"string","nodeType":"ElementaryTypeName","src":"4953:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4952:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":65989,"nodeType":"FunctionDefinition","src":"5042:173:156","nodes":[],"body":{"id":65988,"nodeType":"Block","src":"5151:64:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":65983,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65972,"src":"5188:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65984,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65974,"src":"5197:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":65985,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65976,"src":"5202:5:156","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":65981,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"5168:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":65982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5171:16:156","memberName":"serializeBytes32","nodeType":"MemberAccess","referencedDeclaration":69391,"src":"5168:19:156","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":65986,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5168:40:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65980,"id":65987,"nodeType":"Return","src":"5161:47:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"5051:9:156","parameters":{"id":65977,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65972,"mutability":"mutable","name":"jsonKey","nameLocation":"5075:7:156","nodeType":"VariableDeclaration","scope":65989,"src":"5061:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65971,"name":"string","nodeType":"ElementaryTypeName","src":"5061:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65974,"mutability":"mutable","name":"key","nameLocation":"5098:3:156","nodeType":"VariableDeclaration","scope":65989,"src":"5084:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65973,"name":"string","nodeType":"ElementaryTypeName","src":"5084:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65976,"mutability":"mutable","name":"value","nameLocation":"5111:5:156","nodeType":"VariableDeclaration","scope":65989,"src":"5103:13:156","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":65975,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5103:7:156","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"5060:57:156"},"returnParameters":{"id":65980,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65979,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65989,"src":"5136:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65978,"name":"string","nodeType":"ElementaryTypeName","src":"5136:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5135:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66009,"nodeType":"FunctionDefinition","src":"5221:202:156","nodes":[],"body":{"id":66008,"nodeType":"Block","src":"5359:64:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66003,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65991,"src":"5396:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66004,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65993,"src":"5405:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66005,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65996,"src":"5410:5:156","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":66001,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"5376:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5379:16:156","memberName":"serializeBytes32","nodeType":"MemberAccess","referencedDeclaration":69473,"src":"5376:19:156","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":66006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5376:40:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":66000,"id":66007,"nodeType":"Return","src":"5369:47:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"5230:9:156","parameters":{"id":65997,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65991,"mutability":"mutable","name":"jsonKey","nameLocation":"5254:7:156","nodeType":"VariableDeclaration","scope":66009,"src":"5240:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65990,"name":"string","nodeType":"ElementaryTypeName","src":"5240:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65993,"mutability":"mutable","name":"key","nameLocation":"5277:3:156","nodeType":"VariableDeclaration","scope":66009,"src":"5263:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65992,"name":"string","nodeType":"ElementaryTypeName","src":"5263:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65996,"mutability":"mutable","name":"value","nameLocation":"5299:5:156","nodeType":"VariableDeclaration","scope":66009,"src":"5282:22:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":65994,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5282:7:156","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":65995,"nodeType":"ArrayTypeName","src":"5282:9:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"5239:66:156"},"returnParameters":{"id":66000,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65999,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66009,"src":"5340:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65998,"name":"string","nodeType":"ElementaryTypeName","src":"5340:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5339:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66028,"nodeType":"FunctionDefinition","src":"5429:176:156","nodes":[],"body":{"id":66027,"nodeType":"Block","src":"5543:62:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66022,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66011,"src":"5578:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66023,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66013,"src":"5587:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66024,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66015,"src":"5592:5:156","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":66020,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"5560:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5563:14:156","memberName":"serializeBytes","nodeType":"MemberAccess","referencedDeclaration":69413,"src":"5560:17:156","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":66025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5560:38:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":66019,"id":66026,"nodeType":"Return","src":"5553:45:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"5438:9:156","parameters":{"id":66016,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66011,"mutability":"mutable","name":"jsonKey","nameLocation":"5462:7:156","nodeType":"VariableDeclaration","scope":66028,"src":"5448:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66010,"name":"string","nodeType":"ElementaryTypeName","src":"5448:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66013,"mutability":"mutable","name":"key","nameLocation":"5485:3:156","nodeType":"VariableDeclaration","scope":66028,"src":"5471:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66012,"name":"string","nodeType":"ElementaryTypeName","src":"5471:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66015,"mutability":"mutable","name":"value","nameLocation":"5503:5:156","nodeType":"VariableDeclaration","scope":66028,"src":"5490:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66014,"name":"bytes","nodeType":"ElementaryTypeName","src":"5490:5:156","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5447:62:156"},"returnParameters":{"id":66019,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66018,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66028,"src":"5528:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66017,"name":"string","nodeType":"ElementaryTypeName","src":"5528:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5527:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66048,"nodeType":"FunctionDefinition","src":"5611:198:156","nodes":[],"body":{"id":66047,"nodeType":"Block","src":"5747:62:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66042,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66030,"src":"5782:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66043,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66032,"src":"5791:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66044,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66035,"src":"5796:5:156","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":66040,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"5764:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5767:14:156","memberName":"serializeBytes","nodeType":"MemberAccess","referencedDeclaration":69497,"src":"5764:17:156","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":66045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5764:38:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":66039,"id":66046,"nodeType":"Return","src":"5757:45:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"5620:9:156","parameters":{"id":66036,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66030,"mutability":"mutable","name":"jsonKey","nameLocation":"5644:7:156","nodeType":"VariableDeclaration","scope":66048,"src":"5630:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66029,"name":"string","nodeType":"ElementaryTypeName","src":"5630:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66032,"mutability":"mutable","name":"key","nameLocation":"5667:3:156","nodeType":"VariableDeclaration","scope":66048,"src":"5653:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66031,"name":"string","nodeType":"ElementaryTypeName","src":"5653:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66035,"mutability":"mutable","name":"value","nameLocation":"5687:5:156","nodeType":"VariableDeclaration","scope":66048,"src":"5672:20:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":66033,"name":"bytes","nodeType":"ElementaryTypeName","src":"5672:5:156","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":66034,"nodeType":"ArrayTypeName","src":"5672:7:156","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"5629:64:156"},"returnParameters":{"id":66039,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66038,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66048,"src":"5728:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66037,"name":"string","nodeType":"ElementaryTypeName","src":"5728:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5727:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66067,"nodeType":"FunctionDefinition","src":"5815:198:156","nodes":[],"body":{"id":66066,"nodeType":"Block","src":"5950:63:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66061,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66050,"src":"5986:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66062,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66052,"src":"5995:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66063,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66054,"src":"6000:5:156","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":66059,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"5967:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66060,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5970:15:156","memberName":"serializeString","nodeType":"MemberAccess","referencedDeclaration":69402,"src":"5967:18:156","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":66064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5967:39:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":66058,"id":66065,"nodeType":"Return","src":"5960:46:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"5824:9:156","parameters":{"id":66055,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66050,"mutability":"mutable","name":"jsonKey","nameLocation":"5848:7:156","nodeType":"VariableDeclaration","scope":66067,"src":"5834:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66049,"name":"string","nodeType":"ElementaryTypeName","src":"5834:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66052,"mutability":"mutable","name":"key","nameLocation":"5871:3:156","nodeType":"VariableDeclaration","scope":66067,"src":"5857:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66051,"name":"string","nodeType":"ElementaryTypeName","src":"5857:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66054,"mutability":"mutable","name":"value","nameLocation":"5890:5:156","nodeType":"VariableDeclaration","scope":66067,"src":"5876:19:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66053,"name":"string","nodeType":"ElementaryTypeName","src":"5876:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5833:63:156"},"returnParameters":{"id":66058,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66057,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66067,"src":"5931:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66056,"name":"string","nodeType":"ElementaryTypeName","src":"5931:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5930:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66087,"nodeType":"FunctionDefinition","src":"6019:200:156","nodes":[],"body":{"id":66086,"nodeType":"Block","src":"6156:63:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66081,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66069,"src":"6192:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66082,"name":"key","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66071,"src":"6201:3:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66083,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66074,"src":"6206:5:156","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":66079,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"6173:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66080,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6176:15:156","memberName":"serializeString","nodeType":"MemberAccess","referencedDeclaration":69485,"src":"6173:18:156","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":66084,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6173:39:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":66078,"id":66085,"nodeType":"Return","src":"6166:46:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"serialize","nameLocation":"6028:9:156","parameters":{"id":66075,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66069,"mutability":"mutable","name":"jsonKey","nameLocation":"6052:7:156","nodeType":"VariableDeclaration","scope":66087,"src":"6038:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66068,"name":"string","nodeType":"ElementaryTypeName","src":"6038:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66071,"mutability":"mutable","name":"key","nameLocation":"6075:3:156","nodeType":"VariableDeclaration","scope":66087,"src":"6061:17:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66070,"name":"string","nodeType":"ElementaryTypeName","src":"6061:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66074,"mutability":"mutable","name":"value","nameLocation":"6096:5:156","nodeType":"VariableDeclaration","scope":66087,"src":"6080:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":66072,"name":"string","nodeType":"ElementaryTypeName","src":"6080:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":66073,"nodeType":"ArrayTypeName","src":"6080:8:156","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"6037:65:156"},"returnParameters":{"id":66078,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66077,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66087,"src":"6137:13:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66076,"name":"string","nodeType":"ElementaryTypeName","src":"6137:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6136:15:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66102,"nodeType":"FunctionDefinition","src":"6225:111:156","nodes":[],"body":{"id":66101,"nodeType":"Block","src":"6292:44:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66097,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66089,"src":"6315:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66098,"name":"path","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66091,"src":"6324:4:156","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":66094,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"6302:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66096,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6305:9:156","memberName":"writeJson","nodeType":"MemberAccess","referencedDeclaration":69504,"src":"6302:12:156","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory,string memory) external"}},"id":66099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6302:27:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66100,"nodeType":"ExpressionStatement","src":"6302:27:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"write","nameLocation":"6234:5:156","parameters":{"id":66092,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66089,"mutability":"mutable","name":"jsonKey","nameLocation":"6254:7:156","nodeType":"VariableDeclaration","scope":66102,"src":"6240:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66088,"name":"string","nodeType":"ElementaryTypeName","src":"6240:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66091,"mutability":"mutable","name":"path","nameLocation":"6277:4:156","nodeType":"VariableDeclaration","scope":66102,"src":"6263:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66090,"name":"string","nodeType":"ElementaryTypeName","src":"6263:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6239:43:156"},"returnParameters":{"id":66093,"nodeType":"ParameterList","parameters":[],"src":"6292:0:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":66120,"nodeType":"FunctionDefinition","src":"6342:145:156","nodes":[],"body":{"id":66119,"nodeType":"Block","src":"6433:54:156","nodes":[],"statements":[{"expression":{"arguments":[{"id":66114,"name":"jsonKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66104,"src":"6456:7:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66115,"name":"path","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66106,"src":"6465:4:156","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":66116,"name":"valueKey","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66108,"src":"6471:8:156","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":66111,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65476,"src":"6443:2:156","typeDescriptions":{"typeIdentifier":"t_contract$_VmSafe_$69547","typeString":"contract VmSafe"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6446:9:156","memberName":"writeJson","nodeType":"MemberAccess","referencedDeclaration":69513,"src":"6443:12:156","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":66117,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6443:37:156","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66118,"nodeType":"ExpressionStatement","src":"6443:37:156"}]},"implemented":true,"kind":"function","modifiers":[],"name":"write","nameLocation":"6351:5:156","parameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66104,"mutability":"mutable","name":"jsonKey","nameLocation":"6371:7:156","nodeType":"VariableDeclaration","scope":66120,"src":"6357:21:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66103,"name":"string","nodeType":"ElementaryTypeName","src":"6357:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66106,"mutability":"mutable","name":"path","nameLocation":"6394:4:156","nodeType":"VariableDeclaration","scope":66120,"src":"6380:18:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66105,"name":"string","nodeType":"ElementaryTypeName","src":"6380:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66108,"mutability":"mutable","name":"valueKey","nameLocation":"6414:8:156","nodeType":"VariableDeclaration","scope":66120,"src":"6400:22:156","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66107,"name":"string","nodeType":"ElementaryTypeName","src":"6400:6:156","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"6356:67:156"},"returnParameters":{"id":66110,"nodeType":"ParameterList","parameters":[],"src":"6433:0:156"},"scope":66121,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"canonicalName":"stdJson","contractDependencies":[],"contractKind":"library","fullyImplemented":true,"linearizedBaseContracts":[66121],"name":"stdJson","nameLocation":"838:7:156","scope":66122,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":156}