19570 lines
856 KiB
JSON
19570 lines
856 KiB
JSON
{
|
|
"abi": [],
|
|
"bytecode": {
|
|
"object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f066e1d8e5ab908a20937b029dfa91f4e1ad1f984eda01d3d406b36f4dd3d39464736f6c63430008160033",
|
|
"sourceMap": "7339:4665:10:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;7339:4665:10;;;;;;;;;;;;;;;;;",
|
|
"linkReferences": {}
|
|
},
|
|
"deployedBytecode": {
|
|
"object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f066e1d8e5ab908a20937b029dfa91f4e1ad1f984eda01d3d406b36f4dd3d39464736f6c63430008160033",
|
|
"sourceMap": "7339:4665:10:-:0;;;;;;;;",
|
|
"linkReferences": {}
|
|
},
|
|
"methodIdentifiers": {},
|
|
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.22+commit.4fc1097e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdStorage.sol\":\"stdStorage\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"details\":{\"constantOptimizer\":true,\"cse\":true,\"deduplicate\":true,\"inliner\":true,\"jumpdestRemover\":true,\"orderLiterals\":true,\"peephole\":true,\"simpleCounterForLoopUncheckedIncrement\":true,\"yul\":true,\"yulDetails\":{\"optimizerSteps\":\"dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu\",\"stackAllocation\":true}},\"runs\":999999999},\"remappings\":[\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@uniswap/v3-core/=lib_uniswap/v3-core/\",\":@uniswap/v3-periphery/=lib_uniswap/v3-periphery/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":v3-core/=lib_uniswap/v3-core/\",\":v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/\"]},\"sources\":{\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x391a28a2e54aea51a6fb03a3a48035304ca4d24bc669ddf3d4c152c7162e514d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://475fd0d87ccb0fdc4418dea2babffb4adb4aafb817e61f7ef31c2303f10c6c26\",\"dweb:/ipfs/QmQgcgtZxpkW6DRmbJszN1F8mU6zhaTZGdWWsj77yCuWN9\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xb569d0b4398fad95f508fb854e832143edf69a897af4250f5f60fe195a2066c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://84b722ada97ea7bb841cdc0fa556aa36a02ff2d380fa24f6dc0717a71c6d9c7c\",\"dweb:/ipfs/QmfCH9Q4tvJhPM286GFsE4UCP4YncLpRu4Nwa2ZkHdRfbw\"]}},\"version\":1}",
|
|
"metadata": {
|
|
"compiler": {
|
|
"version": "0.8.22+commit.4fc1097e"
|
|
},
|
|
"language": "Solidity",
|
|
"output": {
|
|
"abi": [],
|
|
"devdoc": {
|
|
"kind": "dev",
|
|
"methods": {},
|
|
"version": 1
|
|
},
|
|
"userdoc": {
|
|
"kind": "user",
|
|
"methods": {},
|
|
"version": 1
|
|
}
|
|
},
|
|
"settings": {
|
|
"remappings": [
|
|
"@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
|
|
"@uniswap/v3-core/=lib_uniswap/v3-core/",
|
|
"@uniswap/v3-periphery/=lib_uniswap/v3-periphery/",
|
|
"ds-test/=lib/forge-std/lib/ds-test/src/",
|
|
"forge-std/=lib/forge-std/src/",
|
|
"openzeppelin-contracts/=lib/openzeppelin-contracts/",
|
|
"v3-core/=lib_uniswap/v3-core/",
|
|
"v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/"
|
|
],
|
|
"optimizer": {
|
|
"runs": 999999999,
|
|
"details": {
|
|
"peephole": true,
|
|
"inliner": true,
|
|
"jumpdestRemover": true,
|
|
"orderLiterals": true,
|
|
"deduplicate": true,
|
|
"cse": true,
|
|
"constantOptimizer": true,
|
|
"yul": true,
|
|
"yulDetails": {
|
|
"stackAllocation": true,
|
|
"optimizerSteps": "dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu"
|
|
}
|
|
}
|
|
},
|
|
"metadata": {
|
|
"bytecodeHash": "ipfs"
|
|
},
|
|
"compilationTarget": {
|
|
"lib/forge-std/src/StdStorage.sol": "stdStorage"
|
|
},
|
|
"libraries": {}
|
|
},
|
|
"sources": {
|
|
"lib/forge-std/src/StdStorage.sol": {
|
|
"keccak256": "0x391a28a2e54aea51a6fb03a3a48035304ca4d24bc669ddf3d4c152c7162e514d",
|
|
"urls": [
|
|
"bzz-raw://475fd0d87ccb0fdc4418dea2babffb4adb4aafb817e61f7ef31c2303f10c6c26",
|
|
"dweb:/ipfs/QmQgcgtZxpkW6DRmbJszN1F8mU6zhaTZGdWWsj77yCuWN9"
|
|
],
|
|
"license": "MIT"
|
|
},
|
|
"lib/forge-std/src/Vm.sol": {
|
|
"keccak256": "0xb569d0b4398fad95f508fb854e832143edf69a897af4250f5f60fe195a2066c5",
|
|
"urls": [
|
|
"bzz-raw://84b722ada97ea7bb841cdc0fa556aa36a02ff2d380fa24f6dc0717a71c6d9c7c",
|
|
"dweb:/ipfs/QmfCH9Q4tvJhPM286GFsE4UCP4YncLpRu4Nwa2ZkHdRfbw"
|
|
],
|
|
"license": "MIT"
|
|
}
|
|
},
|
|
"version": 1
|
|
},
|
|
"ast": {
|
|
"absolutePath": "lib/forge-std/src/StdStorage.sol",
|
|
"id": 9828,
|
|
"exportedSymbols": {
|
|
"StdStorage": [
|
|
8374
|
|
],
|
|
"Vm": [
|
|
13464
|
|
],
|
|
"stdStorage": [
|
|
9827
|
|
],
|
|
"stdStorageSafe": [
|
|
9266
|
|
]
|
|
},
|
|
"nodeType": "SourceUnit",
|
|
"src": "32:11973:10",
|
|
"nodes": [
|
|
{
|
|
"id": 8344,
|
|
"nodeType": "PragmaDirective",
|
|
"src": "32:31:10",
|
|
"nodes": [],
|
|
"literals": [
|
|
"solidity",
|
|
">=",
|
|
"0.6",
|
|
".2",
|
|
"<",
|
|
"0.9",
|
|
".0"
|
|
]
|
|
},
|
|
{
|
|
"id": 8346,
|
|
"nodeType": "ImportDirective",
|
|
"src": "65:28:10",
|
|
"nodes": [],
|
|
"absolutePath": "lib/forge-std/src/Vm.sol",
|
|
"file": "./Vm.sol",
|
|
"nameLocation": "-1:-1:-1",
|
|
"scope": 9828,
|
|
"sourceUnit": 13465,
|
|
"symbolAliases": [
|
|
{
|
|
"foreign": {
|
|
"id": 8345,
|
|
"name": "Vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 13464,
|
|
"src": "73:2:10",
|
|
"typeDescriptions": {}
|
|
},
|
|
"nameLocation": "-1:-1:-1"
|
|
}
|
|
],
|
|
"unitAlias": ""
|
|
},
|
|
{
|
|
"id": 8374,
|
|
"nodeType": "StructDefinition",
|
|
"src": "95:271:10",
|
|
"nodes": [],
|
|
"canonicalName": "StdStorage",
|
|
"members": [
|
|
{
|
|
"constant": false,
|
|
"id": 8354,
|
|
"mutability": "mutable",
|
|
"name": "slots",
|
|
"nameLocation": "186:5:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "119:72:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
},
|
|
"typeName": {
|
|
"id": 8353,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8347,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "127:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "119:66:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8352,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8348,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "146:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "138:46:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8351,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8349,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "164:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "156:27:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8350,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "175:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8362,
|
|
"mutability": "mutable",
|
|
"name": "finds",
|
|
"nameLocation": "261:5:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "197:69:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
},
|
|
"typeName": {
|
|
"id": 8361,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8355,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "205:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "197:63:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8360,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8356,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "224:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "216:43:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8359,
|
|
"keyName": "",
|
|
"keyNameLocation": "-1:-1:-1",
|
|
"keyType": {
|
|
"id": 8357,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "242:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Mapping",
|
|
"src": "234:24:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
},
|
|
"valueName": "",
|
|
"valueNameLocation": "-1:-1:-1",
|
|
"valueType": {
|
|
"id": 8358,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "253:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8365,
|
|
"mutability": "mutable",
|
|
"name": "_keys",
|
|
"nameLocation": "282:5:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "272:15:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 8363,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "272:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 8364,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "272:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8367,
|
|
"mutability": "mutable",
|
|
"name": "_sig",
|
|
"nameLocation": "300:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "293:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 8366,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "293:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8369,
|
|
"mutability": "mutable",
|
|
"name": "_depth",
|
|
"nameLocation": "318:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "310:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8368,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "310:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8371,
|
|
"mutability": "mutable",
|
|
"name": "_target",
|
|
"nameLocation": "338:7:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "330:15:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8370,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "330:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8373,
|
|
"mutability": "mutable",
|
|
"name": "_set",
|
|
"nameLocation": "359:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8374,
|
|
"src": "351:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8372,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "351:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"name": "StdStorage",
|
|
"nameLocation": "102:10:10",
|
|
"scope": 9828,
|
|
"visibility": "public"
|
|
},
|
|
{
|
|
"id": 9266,
|
|
"nodeType": "ContractDefinition",
|
|
"src": "368:6969:10",
|
|
"nodes": [
|
|
{
|
|
"id": 8384,
|
|
"nodeType": "EventDefinition",
|
|
"src": "397:74:10",
|
|
"nodes": [],
|
|
"anonymous": false,
|
|
"eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed",
|
|
"name": "SlotFound",
|
|
"nameLocation": "403:9:10",
|
|
"parameters": {
|
|
"id": 8383,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8376,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "421:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8384,
|
|
"src": "413:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8375,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "413:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8378,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "fsig",
|
|
"nameLocation": "433:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8384,
|
|
"src": "426:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 8377,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "426:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8380,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "keysHash",
|
|
"nameLocation": "447:8:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8384,
|
|
"src": "439:16:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8379,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "439:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8382,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "slot",
|
|
"nameLocation": "465:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8384,
|
|
"src": "457:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8381,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "457:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "412:58:10"
|
|
}
|
|
},
|
|
{
|
|
"id": 8390,
|
|
"nodeType": "EventDefinition",
|
|
"src": "476:54:10",
|
|
"nodes": [],
|
|
"anonymous": false,
|
|
"eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5",
|
|
"name": "WARNING_UninitedSlot",
|
|
"nameLocation": "482:20:10",
|
|
"parameters": {
|
|
"id": 8389,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8386,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "511:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8390,
|
|
"src": "503:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8385,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "503:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8388,
|
|
"indexed": false,
|
|
"mutability": "mutable",
|
|
"name": "slot",
|
|
"nameLocation": "524:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8390,
|
|
"src": "516:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8387,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "516:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "502:27:10"
|
|
}
|
|
},
|
|
{
|
|
"id": 8407,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "536:84:10",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "vm",
|
|
"nameLocation": "556:2:10",
|
|
"scope": 9266,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
},
|
|
"typeName": {
|
|
"id": 8392,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8391,
|
|
"name": "Vm",
|
|
"nameLocations": [
|
|
"536:2:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 13464,
|
|
"src": "536:2:10"
|
|
},
|
|
"referencedDeclaration": 13464,
|
|
"src": "536:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"hexValue": "6865766d20636865617420636f6465",
|
|
"id": 8401,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "598:17:10",
|
|
"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": 8400,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "588:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8402,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "588:28:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8399,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "580:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8398,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "580:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8403,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "580:37:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8397,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "572:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 8396,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "572:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8404,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "572:46:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 8395,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "564:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 8394,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "564:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8405,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "564:55:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 8393,
|
|
"name": "Vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 13464,
|
|
"src": "561:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_Vm_$13464_$",
|
|
"typeString": "type(contract Vm)"
|
|
}
|
|
},
|
|
"id": 8406,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "561:59:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"id": 8425,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "627:123:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8424,
|
|
"nodeType": "Block",
|
|
"src": "694:56:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8419,
|
|
"name": "sigStr",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8409,
|
|
"src": "734:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
],
|
|
"id": 8418,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "728:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
|
|
"typeString": "type(bytes storage pointer)"
|
|
},
|
|
"typeName": {
|
|
"id": 8417,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "728:5:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8420,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "728:13:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8416,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "718:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8421,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "718:24:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8415,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "711:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes4_$",
|
|
"typeString": "type(bytes4)"
|
|
},
|
|
"typeName": {
|
|
"id": 8414,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "711:6:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8422,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "711:32:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8413,
|
|
"id": 8423,
|
|
"nodeType": "Return",
|
|
"src": "704:39:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sigs",
|
|
"nameLocation": "636:4:10",
|
|
"parameters": {
|
|
"id": 8410,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8409,
|
|
"mutability": "mutable",
|
|
"name": "sigStr",
|
|
"nameLocation": "655:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8425,
|
|
"src": "641:20:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 8408,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "641:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "640:22:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8413,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8412,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8425,
|
|
"src": "686:6:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 8411,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "686:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "685:8:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8869,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "1264:3197:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8868,
|
|
"nodeType": "Block",
|
|
"src": "1330:3131:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
8435
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8435,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "1348:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1340:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8434,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1340:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8438,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 8436,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1354:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8437,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1359:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "1354:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1340:26:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8440
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8440,
|
|
"mutability": "mutable",
|
|
"name": "fsig",
|
|
"nameLocation": "1383:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1376:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 8439,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1376:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8443,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 8441,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1390:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8442,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1395:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "1390:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1376:23:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8445
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8445,
|
|
"mutability": "mutable",
|
|
"name": "field_depth",
|
|
"nameLocation": "1417:11:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1409:19:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8444,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1409:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8448,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 8446,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1431:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8447,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1436:6:10",
|
|
"memberName": "_depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8369,
|
|
"src": "1431:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1409:33:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8453
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8453,
|
|
"mutability": "mutable",
|
|
"name": "ins",
|
|
"nameLocation": "1469:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1452:20:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 8451,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1452:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 8452,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "1452:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8456,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 8454,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1475:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8455,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1480:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "1475:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1452:33:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8457,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1536:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8458,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1541:5:10",
|
|
"memberName": "finds",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8362,
|
|
"src": "1536:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
}
|
|
},
|
|
"id": 8460,
|
|
"indexExpression": {
|
|
"id": 8459,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "1547:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1536:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
}
|
|
},
|
|
"id": 8462,
|
|
"indexExpression": {
|
|
"id": 8461,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "1552:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1536:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
}
|
|
},
|
|
"id": 8470,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8466,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "1585:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8467,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "1590:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8464,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "1568:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8465,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1572:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "1568:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8468,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1568:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8463,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "1558:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8469,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1558:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1536:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8487,
|
|
"nodeType": "IfStatement",
|
|
"src": "1532:174:10",
|
|
"trueBody": {
|
|
"id": 8486,
|
|
"nodeType": "Block",
|
|
"src": "1606:100:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8471,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "1627:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8472,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1632:5:10",
|
|
"memberName": "slots",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8354,
|
|
"src": "1627:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
}
|
|
},
|
|
"id": 8474,
|
|
"indexExpression": {
|
|
"id": 8473,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "1638:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1627:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
}
|
|
},
|
|
"id": 8476,
|
|
"indexExpression": {
|
|
"id": 8475,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "1643:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1627:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 8484,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8480,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "1676:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8481,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "1681:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8478,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "1659:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8479,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1663:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "1659:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8482,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1659:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8477,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "1649:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8483,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1649:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "1627:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8433,
|
|
"id": 8485,
|
|
"nodeType": "Return",
|
|
"src": "1620:75:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
8489
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8489,
|
|
"mutability": "mutable",
|
|
"name": "cald",
|
|
"nameLocation": "1728:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1715:17:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 8488,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1715:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8497,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 8492,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "1752:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8494,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "1766:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
],
|
|
"id": 8493,
|
|
"name": "flatten",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9265,
|
|
"src": "1758:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (bytes32[] memory) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8495,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1758:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8490,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "1735:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8491,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1739:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "1735:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8496,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1735:36:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1715:56:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [],
|
|
"expression": {
|
|
"argumentTypes": [],
|
|
"expression": {
|
|
"id": 8498,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "1781:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8500,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1784:6:10",
|
|
"memberName": "record",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 12312,
|
|
"src": "1781:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$__$returns$__$",
|
|
"typeString": "function () external"
|
|
}
|
|
},
|
|
"id": 8501,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1781:11:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8502,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1781:11:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8504
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8504,
|
|
"mutability": "mutable",
|
|
"name": "fdat",
|
|
"nameLocation": "1810:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1802:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8503,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1802:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8505,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1802:12:10"
|
|
},
|
|
{
|
|
"id": 8522,
|
|
"nodeType": "Block",
|
|
"src": "1824:128:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
null,
|
|
8507
|
|
],
|
|
"declarations": [
|
|
null,
|
|
{
|
|
"constant": false,
|
|
"id": 8507,
|
|
"mutability": "mutable",
|
|
"name": "rdat",
|
|
"nameLocation": "1854:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8522,
|
|
"src": "1841:17:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 8506,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1841:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8512,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 8510,
|
|
"name": "cald",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8489,
|
|
"src": "1877:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8508,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "1862:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"id": 8509,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1866:10:10",
|
|
"memberName": "staticcall",
|
|
"nodeType": "MemberAccess",
|
|
"src": "1862:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (bytes memory) view returns (bool,bytes memory)"
|
|
}
|
|
},
|
|
"id": 8511,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1862:20:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "tuple(bool,bytes memory)"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1838:44:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8520,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"id": 8513,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8504,
|
|
"src": "1896:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"id": 8515,
|
|
"name": "rdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8507,
|
|
"src": "1918:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 8518,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"hexValue": "3332",
|
|
"id": 8516,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1924:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"id": 8517,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "1929:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "1924:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8514,
|
|
"name": "bytesToBytes32",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9224,
|
|
"src": "1903:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory,uint256) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8519,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1903:38:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "1896:45:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 8521,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "1896:45:10"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"assignments": [
|
|
8527,
|
|
null
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8527,
|
|
"mutability": "mutable",
|
|
"name": "reads",
|
|
"nameLocation": "1980:5:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8868,
|
|
"src": "1963:22:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 8525,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1963:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 8526,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "1963:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
null
|
|
],
|
|
"id": 8535,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8532,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2010:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 8531,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2002:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 8530,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2002:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8533,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2002:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8528,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "1990:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8529,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "1993:8:10",
|
|
"memberName": "accesses",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 12323,
|
|
"src": "1990:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$",
|
|
"typeString": "function (address) external returns (bytes32[] memory,bytes32[] memory)"
|
|
}
|
|
},
|
|
"id": 8534,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1990:25:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$",
|
|
"typeString": "tuple(bytes32[] memory,bytes32[] memory)"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "1962:53:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 8539,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 8536,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2029:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8537,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2035:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2029:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"hexValue": "31",
|
|
"id": 8538,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2045:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "2029:17:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": {
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 8641,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 8638,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2786:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8639,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2792:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2786:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">",
|
|
"rightExpression": {
|
|
"hexValue": "31",
|
|
"id": 8640,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2801:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "2786:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseBody": {
|
|
"id": 8816,
|
|
"nodeType": "Block",
|
|
"src": "3986:99:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "73746453746f726167652066696e642853746453746f72616765293a204e6f2073746f726167652075736520646574656374656420666f72207461726765742e",
|
|
"id": 8813,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4007:66:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\""
|
|
},
|
|
"value": "stdStorage find(StdStorage): No storage use detected for target."
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\""
|
|
}
|
|
],
|
|
"id": 8812,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
-19,
|
|
-19
|
|
],
|
|
"referencedDeclaration": -19,
|
|
"src": "4000:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 8814,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4000:74:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8815,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4000:74:10"
|
|
}
|
|
]
|
|
},
|
|
"id": 8817,
|
|
"nodeType": "IfStatement",
|
|
"src": "2782:1303:10",
|
|
"trueBody": {
|
|
"id": 8811,
|
|
"nodeType": "Block",
|
|
"src": "2804:1176:10",
|
|
"statements": [
|
|
{
|
|
"body": {
|
|
"id": 8809,
|
|
"nodeType": "Block",
|
|
"src": "2861:1109:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
8654
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8654,
|
|
"mutability": "mutable",
|
|
"name": "prev",
|
|
"nameLocation": "2887:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8809,
|
|
"src": "2879:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8653,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2879:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8662,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 8657,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2902:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"baseExpression": {
|
|
"id": 8658,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2907:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8660,
|
|
"indexExpression": {
|
|
"id": 8659,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "2913:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2907:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8655,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "2894:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8656,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2897:4:10",
|
|
"memberName": "load",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 11994,
|
|
"src": "2894:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_view$_t_address_$_t_bytes32_$returns$_t_bytes32_$",
|
|
"typeString": "function (address,bytes32) view external returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8661,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2894:22:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2879:37:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 8668,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8663,
|
|
"name": "prev",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8654,
|
|
"src": "2938:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "30",
|
|
"id": 8666,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2954:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
}
|
|
],
|
|
"id": 8665,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2946:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8664,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2946:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8667,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2946:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "2938:18:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8680,
|
|
"nodeType": "IfStatement",
|
|
"src": "2934:114:10",
|
|
"trueBody": {
|
|
"id": 8679,
|
|
"nodeType": "Block",
|
|
"src": "2958:90:10",
|
|
"statements": [
|
|
{
|
|
"eventCall": {
|
|
"arguments": [
|
|
{
|
|
"id": 8670,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3006:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8673,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3019:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8675,
|
|
"indexExpression": {
|
|
"id": 8674,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3025:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3019:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8672,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "3011:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8671,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3011:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8676,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3011:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8669,
|
|
"name": "WARNING_UninitedSlot",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8390,
|
|
"src": "2985:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
|
"typeString": "function (address,uint256)"
|
|
}
|
|
},
|
|
"id": 8677,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2985:44:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8678,
|
|
"nodeType": "EmitStatement",
|
|
"src": "2980:49:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 8684,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3099:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"baseExpression": {
|
|
"id": 8685,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3104:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8687,
|
|
"indexExpression": {
|
|
"id": 8686,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3110:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3104:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"hexValue": "1337",
|
|
"id": 8690,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "hexString",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3122:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc",
|
|
"typeString": "literal_string hex\"1337\""
|
|
},
|
|
"value": "\u00137"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc",
|
|
"typeString": "literal_string hex\"1337\""
|
|
}
|
|
],
|
|
"id": 8689,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "3114:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8688,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3114:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8691,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3114:18:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8681,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "3090:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8683,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3093:5:10",
|
|
"memberName": "store",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 13038,
|
|
"src": "3090:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (address,bytes32,bytes32) external"
|
|
}
|
|
},
|
|
"id": 8692,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3090:43:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8693,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3090:43:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8695
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8695,
|
|
"mutability": "mutable",
|
|
"name": "success",
|
|
"nameLocation": "3156:7:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8809,
|
|
"src": "3151:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 8694,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3151:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8696,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3151:12:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
8698
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8698,
|
|
"mutability": "mutable",
|
|
"name": "rdat",
|
|
"nameLocation": "3194:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8809,
|
|
"src": "3181:17:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 8697,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3181:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8699,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "3181:17:10"
|
|
},
|
|
{
|
|
"id": 8718,
|
|
"nodeType": "Block",
|
|
"src": "3216:146:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 8707,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"components": [
|
|
{
|
|
"id": 8700,
|
|
"name": "success",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8695,
|
|
"src": "3239:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
{
|
|
"id": 8701,
|
|
"name": "rdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8698,
|
|
"src": "3248:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"id": 8702,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "TupleExpression",
|
|
"src": "3238:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "tuple(bool,bytes memory)"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"id": 8705,
|
|
"name": "cald",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8489,
|
|
"src": "3271:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8703,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3256:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"id": 8704,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3260:10:10",
|
|
"memberName": "staticcall",
|
|
"nodeType": "MemberAccess",
|
|
"src": "3256:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (bytes memory) view returns (bool,bytes memory)"
|
|
}
|
|
},
|
|
"id": 8706,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3256:20:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "tuple(bool,bytes memory)"
|
|
}
|
|
},
|
|
"src": "3238:38:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8708,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3238:38:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8716,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"id": 8709,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8504,
|
|
"src": "3298:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"id": 8711,
|
|
"name": "rdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8698,
|
|
"src": "3320:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 8714,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"hexValue": "3332",
|
|
"id": 8712,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3326:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"id": 8713,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "3331:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "3326:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8710,
|
|
"name": "bytesToBytes32",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9224,
|
|
"src": "3305:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory,uint256) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8715,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3305:38:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "3298:45:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 8717,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3298:45:10"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"id": 8726,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8719,
|
|
"name": "success",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8695,
|
|
"src": "3384:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "&&",
|
|
"rightExpression": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 8725,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8720,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8504,
|
|
"src": "3395:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "1337",
|
|
"id": 8723,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "hexString",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3411:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc",
|
|
"typeString": "literal_string hex\"1337\""
|
|
},
|
|
"value": "\u00137"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc",
|
|
"typeString": "literal_string hex\"1337\""
|
|
}
|
|
],
|
|
"id": 8722,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "3403:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8721,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3403:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8724,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3403:18:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "3395:26:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"src": "3384:37:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8798,
|
|
"nodeType": "IfStatement",
|
|
"src": "3380:529:10",
|
|
"trueBody": {
|
|
"id": 8797,
|
|
"nodeType": "Block",
|
|
"src": "3423:486:10",
|
|
"statements": [
|
|
{
|
|
"eventCall": {
|
|
"arguments": [
|
|
{
|
|
"id": 8728,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3529:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"id": 8729,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "3534:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8733,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "3567:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8734,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "3572:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8731,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "3550:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8732,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3554:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "3550:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8735,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3550:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8730,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "3540:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8736,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3540:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8739,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3595:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8741,
|
|
"indexExpression": {
|
|
"id": 8740,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3601:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3595:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8738,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "3587:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8737,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3587:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8742,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3587:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8727,
|
|
"name": "SlotFound",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8384,
|
|
"src": "3519:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$",
|
|
"typeString": "function (address,bytes4,bytes32,uint256)"
|
|
}
|
|
},
|
|
"id": 8743,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3519:86:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8744,
|
|
"nodeType": "EmitStatement",
|
|
"src": "3514:91:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8766,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8745,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "3627:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8756,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3632:5:10",
|
|
"memberName": "slots",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8354,
|
|
"src": "3627:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
}
|
|
},
|
|
"id": 8757,
|
|
"indexExpression": {
|
|
"id": 8747,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3638:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3627:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
}
|
|
},
|
|
"id": 8758,
|
|
"indexExpression": {
|
|
"id": 8748,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "3643:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3627:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 8759,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8752,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "3676:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8753,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "3681:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8750,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "3659:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8751,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3663:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "3659:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8754,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3659:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8749,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "3649:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8755,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3649:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3627:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8762,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3706:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8764,
|
|
"indexExpression": {
|
|
"id": 8763,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3712:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3706:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8761,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "3698:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8760,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "3698:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8765,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3698:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "3627:88:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 8767,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3627:88:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8784,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8768,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "3737:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8779,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3742:5:10",
|
|
"memberName": "finds",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8362,
|
|
"src": "3737:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
}
|
|
},
|
|
"id": 8780,
|
|
"indexExpression": {
|
|
"id": 8770,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3748:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3737:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
}
|
|
},
|
|
"id": 8781,
|
|
"indexExpression": {
|
|
"id": 8771,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "3753:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3737:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
}
|
|
},
|
|
"id": 8782,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8775,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "3786:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8776,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "3791:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8773,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "3769:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8774,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3773:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "3769:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8777,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3769:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8772,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "3759:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8778,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3759:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3737:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"hexValue": "74727565",
|
|
"id": 8783,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "3808:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"src": "3737:75:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8785,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3737:75:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 8789,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3843:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"baseExpression": {
|
|
"id": 8790,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3848:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8792,
|
|
"indexExpression": {
|
|
"id": 8791,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3854:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3848:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"id": 8793,
|
|
"name": "prev",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8654,
|
|
"src": "3858:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8786,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "3834:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8788,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3837:5:10",
|
|
"memberName": "store",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 13038,
|
|
"src": "3834:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (address,bytes32,bytes32) external"
|
|
}
|
|
},
|
|
"id": 8794,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3834:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8795,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3834:29:10"
|
|
},
|
|
{
|
|
"id": 8796,
|
|
"nodeType": "Break",
|
|
"src": "3885:5:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 8802,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "3935:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"baseExpression": {
|
|
"id": 8803,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "3940:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8805,
|
|
"indexExpression": {
|
|
"id": 8804,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "3946:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "3940:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"id": 8806,
|
|
"name": "prev",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8654,
|
|
"src": "3950:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8799,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "3926:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8801,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "3929:5:10",
|
|
"memberName": "store",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 13038,
|
|
"src": "3926:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (address,bytes32,bytes32) external"
|
|
}
|
|
},
|
|
"id": 8807,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "3926:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8808,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "3926:29:10"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 8649,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8646,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "2838:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"expression": {
|
|
"id": 8647,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2842:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8648,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2848:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2842:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "2838:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8810,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
8643
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8643,
|
|
"mutability": "mutable",
|
|
"name": "i",
|
|
"nameLocation": "2831:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8810,
|
|
"src": "2823:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8642,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2823:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8645,
|
|
"initialValue": {
|
|
"hexValue": "30",
|
|
"id": 8644,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2835:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2823:13:10"
|
|
},
|
|
"isSimpleCounterLoop": true,
|
|
"loopExpression": {
|
|
"expression": {
|
|
"id": 8651,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "2856:3:10",
|
|
"subExpression": {
|
|
"id": 8650,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8643,
|
|
"src": "2856:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 8652,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2856:3:10"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "2818:1152:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"id": 8818,
|
|
"nodeType": "IfStatement",
|
|
"src": "2025:2060:10",
|
|
"trueBody": {
|
|
"id": 8637,
|
|
"nodeType": "Block",
|
|
"src": "2048:728:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
8541
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 8541,
|
|
"mutability": "mutable",
|
|
"name": "curr",
|
|
"nameLocation": "2070:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8637,
|
|
"src": "2062:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8540,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2062:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 8549,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 8544,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2085:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"baseExpression": {
|
|
"id": 8545,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2090:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8547,
|
|
"indexExpression": {
|
|
"hexValue": "30",
|
|
"id": 8546,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2096:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2090:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8542,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "2077:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 8543,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2080:4:10",
|
|
"memberName": "load",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 11994,
|
|
"src": "2077:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_view$_t_address_$_t_bytes32_$returns$_t_bytes32_$",
|
|
"typeString": "function (address,bytes32) view external returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8548,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2077:22:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "2062:37:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 8555,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8550,
|
|
"name": "curr",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8541,
|
|
"src": "2117:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "30",
|
|
"id": 8553,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2133:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
}
|
|
],
|
|
"id": 8552,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2125:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8551,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2125:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8554,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2125:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "2117:18:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8567,
|
|
"nodeType": "IfStatement",
|
|
"src": "2113:106:10",
|
|
"trueBody": {
|
|
"id": 8566,
|
|
"nodeType": "Block",
|
|
"src": "2137:82:10",
|
|
"statements": [
|
|
{
|
|
"eventCall": {
|
|
"arguments": [
|
|
{
|
|
"id": 8557,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2181:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8560,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2194:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8562,
|
|
"indexExpression": {
|
|
"hexValue": "30",
|
|
"id": 8561,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2200:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2194:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8559,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2186:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8558,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2186:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8563,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2186:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8556,
|
|
"name": "WARNING_UninitedSlot",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8390,
|
|
"src": "2160:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$",
|
|
"typeString": "function (address,uint256)"
|
|
}
|
|
},
|
|
"id": 8564,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2160:44:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8565,
|
|
"nodeType": "EmitStatement",
|
|
"src": "2155:49:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 8570,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 8568,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8504,
|
|
"src": "2236:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"id": 8569,
|
|
"name": "curr",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8541,
|
|
"src": "2244:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "2236:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8577,
|
|
"nodeType": "IfStatement",
|
|
"src": "2232:238:10",
|
|
"trueBody": {
|
|
"id": 8576,
|
|
"nodeType": "Block",
|
|
"src": "2250:220:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "66616c7365",
|
|
"id": 8572,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2297:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "false"
|
|
},
|
|
{
|
|
"hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e",
|
|
"id": 8573,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2324:113:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\""
|
|
},
|
|
"value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported."
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\""
|
|
}
|
|
],
|
|
"id": 8571,
|
|
"name": "require",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
-18,
|
|
-18
|
|
],
|
|
"referencedDeclaration": -18,
|
|
"src": "2268:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (bool,string memory) pure"
|
|
}
|
|
},
|
|
"id": 8574,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2268:187:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8575,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2268:187:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"eventCall": {
|
|
"arguments": [
|
|
{
|
|
"id": 8579,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2498:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"id": 8580,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "2503:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8584,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "2536:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8585,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "2541:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8582,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "2519:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8583,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2523:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2519:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8586,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2519:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8581,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "2509:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8587,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2509:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8590,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2564:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8592,
|
|
"indexExpression": {
|
|
"hexValue": "30",
|
|
"id": 8591,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2570:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2564:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8589,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2556:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8588,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2556:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8593,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2556:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8578,
|
|
"name": "SlotFound",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8384,
|
|
"src": "2488:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$",
|
|
"typeString": "function (address,bytes4,bytes32,uint256)"
|
|
}
|
|
},
|
|
"id": 8594,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2488:86:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8595,
|
|
"nodeType": "EmitStatement",
|
|
"src": "2483:91:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8617,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8596,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "2588:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8607,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2593:5:10",
|
|
"memberName": "slots",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8354,
|
|
"src": "2588:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
}
|
|
},
|
|
"id": 8608,
|
|
"indexExpression": {
|
|
"id": 8598,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2599:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2588:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
}
|
|
},
|
|
"id": 8609,
|
|
"indexExpression": {
|
|
"id": 8599,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "2604:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2588:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 8610,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8603,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "2637:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8604,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "2642:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8601,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "2620:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8602,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2624:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2620:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8605,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2620:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8600,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "2610:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8606,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2610:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2588:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"id": 8613,
|
|
"name": "reads",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8527,
|
|
"src": "2667:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 8615,
|
|
"indexExpression": {
|
|
"hexValue": "30",
|
|
"id": 8614,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2673:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2667:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 8612,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "2659:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8611,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "2659:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8616,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2659:17:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "2588:88:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 8618,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2588:88:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8635,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8619,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "2690:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8630,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2695:5:10",
|
|
"memberName": "finds",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8362,
|
|
"src": "2690:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
}
|
|
},
|
|
"id": 8631,
|
|
"indexExpression": {
|
|
"id": 8621,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "2701:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2690:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
}
|
|
},
|
|
"id": 8632,
|
|
"indexExpression": {
|
|
"id": 8622,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "2706:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2690:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
}
|
|
},
|
|
"id": 8633,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8626,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "2739:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8627,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "2744:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8624,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "2722:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8625,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "2726:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "2722:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8628,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2722:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8623,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "2712:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8629,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "2712:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"nodeType": "IndexAccess",
|
|
"src": "2690:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"hexValue": "74727565",
|
|
"id": 8634,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "2761:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"src": "2690:75:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 8636,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "2690:75:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8820,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4116:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8821,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "4121:5:10",
|
|
"memberName": "finds",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8362,
|
|
"src": "4116:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
}
|
|
},
|
|
"id": 8823,
|
|
"indexExpression": {
|
|
"id": 8822,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "4127:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4116:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
}
|
|
},
|
|
"id": 8825,
|
|
"indexExpression": {
|
|
"id": 8824,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "4132:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4116:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
}
|
|
},
|
|
"id": 8833,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8829,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "4165:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8830,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "4170:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8827,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "4148:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8828,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "4152:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "4148:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8831,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4148:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8826,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "4138:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8832,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4138:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4116:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
{
|
|
"hexValue": "73746453746f726167652066696e642853746453746f72616765293a20536c6f74287329206e6f7420666f756e642e",
|
|
"id": 8834,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "4198:49:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\""
|
|
},
|
|
"value": "stdStorage find(StdStorage): Slot(s) not found."
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\""
|
|
}
|
|
],
|
|
"id": 8819,
|
|
"name": "require",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
-18,
|
|
-18
|
|
],
|
|
"referencedDeclaration": -18,
|
|
"src": "4095:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (bool,string memory) pure"
|
|
}
|
|
},
|
|
"id": 8835,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4095:162:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8836,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4095:162:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8839,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "4268:19:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 8837,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4275:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8838,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4280:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "4275:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8840,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4268:19:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8843,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "4297:16:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 8841,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4304:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8842,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4309:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "4304:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8844,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4297:16:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8847,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "4323:17:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 8845,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4330:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8846,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4335:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "4330:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8848,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4323:17:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8851,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "4350:18:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 8849,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4357:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8850,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4362:6:10",
|
|
"memberName": "_depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8369,
|
|
"src": "4357:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8852,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4350:18:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 8853,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8429,
|
|
"src": "4386:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8854,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "4391:5:10",
|
|
"memberName": "slots",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8354,
|
|
"src": "4386:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
}
|
|
},
|
|
"id": 8856,
|
|
"indexExpression": {
|
|
"id": 8855,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8435,
|
|
"src": "4397:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4386:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
}
|
|
},
|
|
"id": 8858,
|
|
"indexExpression": {
|
|
"id": 8857,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8440,
|
|
"src": "4402:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4386:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 8866,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8862,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8453,
|
|
"src": "4435:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 8863,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8445,
|
|
"src": "4440:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 8860,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "4418:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 8861,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "4422:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "4418:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 8864,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4418:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 8859,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "4408:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 8865,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4408:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "4386:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8433,
|
|
"id": 8867,
|
|
"nodeType": "Return",
|
|
"src": "4379:75:10"
|
|
}
|
|
]
|
|
},
|
|
"documentation": {
|
|
"id": 8426,
|
|
"nodeType": "StructuredDocumentation",
|
|
"src": "756:129:10",
|
|
"text": "@notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against"
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "find",
|
|
"nameLocation": "1273:4:10",
|
|
"parameters": {
|
|
"id": 8430,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8429,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "1297:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8869,
|
|
"src": "1278:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8428,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8427,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"1278:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "1278:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "1278:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1277:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8433,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8432,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8869,
|
|
"src": "1321:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8431,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1321:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "1320:9:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8889,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "4467:156:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8888,
|
|
"nodeType": "Block",
|
|
"src": "4563:60:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 8884,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"expression": {
|
|
"id": 8880,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8872,
|
|
"src": "4573:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8882,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4578:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "4573:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"id": 8883,
|
|
"name": "_target",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8874,
|
|
"src": "4588:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"src": "4573:22:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"id": 8885,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4573:22:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8886,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8872,
|
|
"src": "4612:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8879,
|
|
"id": 8887,
|
|
"nodeType": "Return",
|
|
"src": "4605:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "target",
|
|
"nameLocation": "4476:6:10",
|
|
"parameters": {
|
|
"id": 8875,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8872,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "4502:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8889,
|
|
"src": "4483:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8871,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8870,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4483:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4483:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4483:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8874,
|
|
"mutability": "mutable",
|
|
"name": "_target",
|
|
"nameLocation": "4516:7:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8889,
|
|
"src": "4508:15:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8873,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4508:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4482:42:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8879,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8878,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8889,
|
|
"src": "4543:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8877,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8876,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4543:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4543:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4543:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4542:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8909,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "4629:143:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8908,
|
|
"nodeType": "Block",
|
|
"src": "4718:54:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 8904,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"expression": {
|
|
"id": 8900,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8892,
|
|
"src": "4728:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8902,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4733:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "4728:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"id": 8903,
|
|
"name": "_sig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8894,
|
|
"src": "4740:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4728:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 8905,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4728:16:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8906,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8892,
|
|
"src": "4761:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8899,
|
|
"id": 8907,
|
|
"nodeType": "Return",
|
|
"src": "4754:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sig",
|
|
"nameLocation": "4638:3:10",
|
|
"parameters": {
|
|
"id": 8895,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8892,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "4661:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8909,
|
|
"src": "4642:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8891,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8890,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4642:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4642:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4642:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8894,
|
|
"mutability": "mutable",
|
|
"name": "_sig",
|
|
"nameLocation": "4674:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8909,
|
|
"src": "4667:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 8893,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4667:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4641:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8899,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8898,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8909,
|
|
"src": "4698:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8897,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8896,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4698:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4698:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4698:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4697:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8931,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "4778:156:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8930,
|
|
"nodeType": "Block",
|
|
"src": "4874:60:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 8926,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"expression": {
|
|
"id": 8920,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8912,
|
|
"src": "4884:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8922,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "4889:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "4884:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"id": 8924,
|
|
"name": "_sig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8914,
|
|
"src": "4901:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
],
|
|
"id": 8923,
|
|
"name": "sigs",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8425,
|
|
"src": "4896:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (string memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 8925,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "4896:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"src": "4884:22:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"id": 8927,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "4884:22:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8928,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8912,
|
|
"src": "4923:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8919,
|
|
"id": 8929,
|
|
"nodeType": "Return",
|
|
"src": "4916:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sig",
|
|
"nameLocation": "4787:3:10",
|
|
"parameters": {
|
|
"id": 8915,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8912,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "4810:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8931,
|
|
"src": "4791:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8911,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8910,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4791:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4791:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4791:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8914,
|
|
"mutability": "mutable",
|
|
"name": "_sig",
|
|
"nameLocation": "4830:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8931,
|
|
"src": "4816:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 8913,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4816:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4790:45:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8919,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8918,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8931,
|
|
"src": "4854:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8917,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8916,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4854:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4854:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4854:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4853:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8962,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "4940:179:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8961,
|
|
"nodeType": "Block",
|
|
"src": "5034:85:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8953,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8936,
|
|
"src": "5084:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 8952,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5076:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 8951,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5076:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8954,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5076:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 8950,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5068:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 8949,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5068:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8955,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5068:21:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8948,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5060:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8947,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5060:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8956,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5060:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"expression": {
|
|
"id": 8942,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8934,
|
|
"src": "5044:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8945,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5049:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "5044:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"id": 8946,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5055:4:10",
|
|
"memberName": "push",
|
|
"nodeType": "MemberAccess",
|
|
"src": "5044:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$attached_to$_t_array$_t_bytes32_$dyn_storage_ptr_$",
|
|
"typeString": "function (bytes32[] storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 8957,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5044:47:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8958,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5044:47:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8959,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8934,
|
|
"src": "5108:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8941,
|
|
"id": 8960,
|
|
"nodeType": "Return",
|
|
"src": "5101:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "4949:8:10",
|
|
"parameters": {
|
|
"id": 8937,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8934,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "4977:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8962,
|
|
"src": "4958:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8933,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8932,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"4958:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "4958:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "4958:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8936,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "4991:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8962,
|
|
"src": "4983:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 8935,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "4983:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "4957:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8941,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8940,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8962,
|
|
"src": "5014:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8939,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8938,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5014:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5014:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5014:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5013:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 8987,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5125:161:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 8986,
|
|
"nodeType": "Block",
|
|
"src": "5219:67:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 8980,
|
|
"name": "amt",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8967,
|
|
"src": "5253:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 8979,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5245:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 8978,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5245:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 8981,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5245:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"expression": {
|
|
"id": 8973,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8965,
|
|
"src": "5229:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 8976,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5234:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "5229:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"id": 8977,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5240:4:10",
|
|
"memberName": "push",
|
|
"nodeType": "MemberAccess",
|
|
"src": "5229:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$attached_to$_t_array$_t_bytes32_$dyn_storage_ptr_$",
|
|
"typeString": "function (bytes32[] storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 8982,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5229:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 8983,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5229:29:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 8984,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8965,
|
|
"src": "5275:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8972,
|
|
"id": 8985,
|
|
"nodeType": "Return",
|
|
"src": "5268:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "5134:8:10",
|
|
"parameters": {
|
|
"id": 8968,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8965,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5162:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8987,
|
|
"src": "5143:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8964,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8963,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5143:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5143:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5143:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8967,
|
|
"mutability": "mutable",
|
|
"name": "amt",
|
|
"nameLocation": "5176:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8987,
|
|
"src": "5168:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 8966,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5168:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5142:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8972,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8971,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 8987,
|
|
"src": "5199:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8970,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8969,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5199:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5199:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5199:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5198:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9009,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5292:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9008,
|
|
"nodeType": "Block",
|
|
"src": "5386:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9003,
|
|
"name": "key",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8992,
|
|
"src": "5412:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"expression": {
|
|
"id": 8998,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8990,
|
|
"src": "5396:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9001,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5401:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "5396:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"id": 9002,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5407:4:10",
|
|
"memberName": "push",
|
|
"nodeType": "MemberAccess",
|
|
"src": "5396:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$attached_to$_t_array$_t_bytes32_$dyn_storage_ptr_$",
|
|
"typeString": "function (bytes32[] storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 9004,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5396:20:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9005,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5396:20:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9006,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8990,
|
|
"src": "5433:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 8997,
|
|
"id": 9007,
|
|
"nodeType": "Return",
|
|
"src": "5426:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "5301:8:10",
|
|
"parameters": {
|
|
"id": 8993,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8990,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5329:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9009,
|
|
"src": "5310:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8989,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8988,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5310:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5310:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5310:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 8992,
|
|
"mutability": "mutable",
|
|
"name": "key",
|
|
"nameLocation": "5343:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9009,
|
|
"src": "5335:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 8991,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5335:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5309:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 8997,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 8996,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9009,
|
|
"src": "5366:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 8995,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 8994,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5366:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5366:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5366:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5365:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9029,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5450:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9028,
|
|
"nodeType": "Block",
|
|
"src": "5544:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 9024,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"expression": {
|
|
"id": 9020,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9012,
|
|
"src": "5554:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9022,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "5559:6:10",
|
|
"memberName": "_depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8369,
|
|
"src": "5554:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"id": 9023,
|
|
"name": "_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9014,
|
|
"src": "5568:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "5554:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9025,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "5554:20:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9026,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9012,
|
|
"src": "5591:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9019,
|
|
"id": 9027,
|
|
"nodeType": "Return",
|
|
"src": "5584:11:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "depth",
|
|
"nameLocation": "5459:5:10",
|
|
"parameters": {
|
|
"id": 9015,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9012,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5484:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9029,
|
|
"src": "5465:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9011,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9010,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5465:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5465:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5465:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9014,
|
|
"mutability": "mutable",
|
|
"name": "_depth",
|
|
"nameLocation": "5498:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9029,
|
|
"src": "5490:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9013,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5490:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5464:41:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9019,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9018,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9029,
|
|
"src": "5524:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9017,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9016,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5524:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5524:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5524:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5523:20:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9061,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5608:194:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9060,
|
|
"nodeType": "Block",
|
|
"src": "5678:124:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9038
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9038,
|
|
"mutability": "mutable",
|
|
"name": "t",
|
|
"nameLocation": "5696:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9060,
|
|
"src": "5688:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9037,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5688:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9041,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 9039,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9032,
|
|
"src": "5700:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9040,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5705:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "5700:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "5688:24:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9043
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9043,
|
|
"mutability": "mutable",
|
|
"name": "s",
|
|
"nameLocation": "5730:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9060,
|
|
"src": "5722:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9042,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5722:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9047,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 9045,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9032,
|
|
"src": "5739:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9044,
|
|
"name": "find",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8869,
|
|
"src": "5734:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_uint256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (uint256)"
|
|
}
|
|
},
|
|
"id": 9046,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5734:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "5722:22:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9052,
|
|
"name": "t",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9038,
|
|
"src": "5780:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9055,
|
|
"name": "s",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9043,
|
|
"src": "5791:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9054,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5783:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9053,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5783:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9056,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5783:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9050,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8407,
|
|
"src": "5772:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 9051,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5775:4:10",
|
|
"memberName": "load",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 11994,
|
|
"src": "5772:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_view$_t_address_$_t_bytes32_$returns$_t_bytes32_$",
|
|
"typeString": "function (address,bytes32) view external returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9057,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5772:22:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9048,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "5761:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9049,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5765:6:10",
|
|
"memberName": "encode",
|
|
"nodeType": "MemberAccess",
|
|
"src": "5761:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9058,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5761:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9036,
|
|
"id": 9059,
|
|
"nodeType": "Return",
|
|
"src": "5754:41:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read",
|
|
"nameLocation": "5617:4:10",
|
|
"parameters": {
|
|
"id": 9033,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9032,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5641:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9061,
|
|
"src": "5622:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9031,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9030,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5622:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5622:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5622:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5621:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9036,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9035,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9061,
|
|
"src": "5664:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9034,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5664:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5663:14:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"id": 9080,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5808:131:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9079,
|
|
"nodeType": "Block",
|
|
"src": "5882:57:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9072,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9064,
|
|
"src": "5915:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9071,
|
|
"name": "read",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9061,
|
|
"src": "5910:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9073,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5910:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"id": 9075,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "5923:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9074,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5923:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
}
|
|
],
|
|
"id": 9076,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "5922:9:10",
|
|
"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": 9069,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "5899:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9070,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "5903:6:10",
|
|
"memberName": "decode",
|
|
"nodeType": "MemberAccess",
|
|
"src": "5899:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abidecode_pure$__$returns$__$",
|
|
"typeString": "function () pure"
|
|
}
|
|
},
|
|
"id": 9077,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "5899:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9068,
|
|
"id": 9078,
|
|
"nodeType": "Return",
|
|
"src": "5892:40:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_bytes32",
|
|
"nameLocation": "5817:12:10",
|
|
"parameters": {
|
|
"id": 9065,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9064,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5849:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9080,
|
|
"src": "5830:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9063,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9062,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5830:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5830:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5830:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5829:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9068,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9067,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9080,
|
|
"src": "5873:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9066,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "5873:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5872:9:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9111,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "5945:279:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9110,
|
|
"nodeType": "Block",
|
|
"src": "6013:211:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9089
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9089,
|
|
"mutability": "mutable",
|
|
"name": "v",
|
|
"nameLocation": "6030:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9110,
|
|
"src": "6023:8:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"typeName": {
|
|
"id": 9088,
|
|
"name": "int256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6023:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9093,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 9091,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9083,
|
|
"src": "6043:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9090,
|
|
"name": "read_int",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9168,
|
|
"src": "6034:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_int256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (int256)"
|
|
}
|
|
},
|
|
"id": 9092,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6034:14:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6023:25:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"id": 9096,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9094,
|
|
"name": "v",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9089,
|
|
"src": "6062:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"hexValue": "30",
|
|
"id": 9095,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6067:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"src": "6062:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9099,
|
|
"nodeType": "IfStatement",
|
|
"src": "6058:24:10",
|
|
"trueBody": {
|
|
"expression": {
|
|
"hexValue": "66616c7365",
|
|
"id": 9097,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6077:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "false"
|
|
},
|
|
"functionReturnParameters": 9087,
|
|
"id": 9098,
|
|
"nodeType": "Return",
|
|
"src": "6070:12:10"
|
|
}
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"id": 9102,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9100,
|
|
"name": "v",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9089,
|
|
"src": "6096:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "==",
|
|
"rightExpression": {
|
|
"hexValue": "31",
|
|
"id": 9101,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6101:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_1_by_1",
|
|
"typeString": "int_const 1"
|
|
},
|
|
"value": "1"
|
|
},
|
|
"src": "6096:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9105,
|
|
"nodeType": "IfStatement",
|
|
"src": "6092:23:10",
|
|
"trueBody": {
|
|
"expression": {
|
|
"hexValue": "74727565",
|
|
"id": 9103,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6111:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "true"
|
|
},
|
|
"functionReturnParameters": 9087,
|
|
"id": 9104,
|
|
"nodeType": "Return",
|
|
"src": "6104:11:10"
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "73746453746f7261676520726561645f626f6f6c2853746453746f72616765293a2043616e6e6f74206465636f64652e204d616b65207375726520796f75206172652072656164696e67206120626f6f6c2e",
|
|
"id": 9107,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6132:84:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5",
|
|
"typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\""
|
|
},
|
|
"value": "stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool."
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5",
|
|
"typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\""
|
|
}
|
|
],
|
|
"id": 9106,
|
|
"name": "revert",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
-19,
|
|
-19
|
|
],
|
|
"referencedDeclaration": -19,
|
|
"src": "6125:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (string memory) pure"
|
|
}
|
|
},
|
|
"id": 9108,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6125:92:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9109,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6125:92:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_bool",
|
|
"nameLocation": "5954:9:10",
|
|
"parameters": {
|
|
"id": 9084,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9083,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "5983:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9111,
|
|
"src": "5964:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9082,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9081,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"5964:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "5964:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "5964:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "5963:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9087,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9086,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9111,
|
|
"src": "6007:4:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 9085,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6007:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6006:6:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9130,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "6230:131:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9129,
|
|
"nodeType": "Block",
|
|
"src": "6304:57:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9122,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9114,
|
|
"src": "6337:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9121,
|
|
"name": "read",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9061,
|
|
"src": "6332:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9123,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6332:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"id": 9125,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "6345:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 9124,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6345:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
}
|
|
],
|
|
"id": 9126,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "6344:9:10",
|
|
"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": 9119,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "6321:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9120,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "6325:6:10",
|
|
"memberName": "decode",
|
|
"nodeType": "MemberAccess",
|
|
"src": "6321:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abidecode_pure$__$returns$__$",
|
|
"typeString": "function () pure"
|
|
}
|
|
},
|
|
"id": 9127,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6321:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address_payable",
|
|
"typeString": "address payable"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9118,
|
|
"id": 9128,
|
|
"nodeType": "Return",
|
|
"src": "6314:40:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_address",
|
|
"nameLocation": "6239:12:10",
|
|
"parameters": {
|
|
"id": 9115,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9114,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "6271:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9130,
|
|
"src": "6252:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9113,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9112,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"6252:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "6252:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "6252:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6251:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9118,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9117,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9130,
|
|
"src": "6295:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9116,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6295:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6294:9:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9149,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "6367:128:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9148,
|
|
"nodeType": "Block",
|
|
"src": "6438:57:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9141,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9133,
|
|
"src": "6471:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9140,
|
|
"name": "read",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9061,
|
|
"src": "6466:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9142,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6466:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"id": 9144,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "6479:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 9143,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6479:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
}
|
|
],
|
|
"id": 9145,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "6478:9:10",
|
|
"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": 9138,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "6455:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9139,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "6459:6:10",
|
|
"memberName": "decode",
|
|
"nodeType": "MemberAccess",
|
|
"src": "6455:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abidecode_pure$__$returns$__$",
|
|
"typeString": "function () pure"
|
|
}
|
|
},
|
|
"id": 9146,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6455:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9137,
|
|
"id": 9147,
|
|
"nodeType": "Return",
|
|
"src": "6448:40:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_uint",
|
|
"nameLocation": "6376:9:10",
|
|
"parameters": {
|
|
"id": 9134,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9133,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "6405:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9149,
|
|
"src": "6386:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9132,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9131,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"6386:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "6386:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "6386:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6385:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9137,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9136,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9149,
|
|
"src": "6429:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9135,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6429:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6428:9:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9168,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "6501:125:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9167,
|
|
"nodeType": "Block",
|
|
"src": "6570:56:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9160,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9152,
|
|
"src": "6603:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9159,
|
|
"name": "read",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9061,
|
|
"src": "6598:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9161,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6598:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"components": [
|
|
{
|
|
"id": 9163,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "6611:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_int256_$",
|
|
"typeString": "type(int256)"
|
|
},
|
|
"typeName": {
|
|
"id": 9162,
|
|
"name": "int256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6611:6:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
}
|
|
],
|
|
"id": 9164,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "6610:8:10",
|
|
"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": 9157,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "6587:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9158,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "6591:6:10",
|
|
"memberName": "decode",
|
|
"nodeType": "MemberAccess",
|
|
"src": "6587:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abidecode_pure$__$returns$__$",
|
|
"typeString": "function () pure"
|
|
}
|
|
},
|
|
"id": 9165,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6587:32:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9156,
|
|
"id": 9166,
|
|
"nodeType": "Return",
|
|
"src": "6580:39:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_int",
|
|
"nameLocation": "6510:8:10",
|
|
"parameters": {
|
|
"id": 9153,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9152,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "6538:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9168,
|
|
"src": "6519:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9151,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9150,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"6519:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "6519:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "6519:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6518:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9156,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9155,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9168,
|
|
"src": "6562:6:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"typeName": {
|
|
"id": 9154,
|
|
"name": "int256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6562:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6561:8:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9224,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "6632:304:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9223,
|
|
"nodeType": "Block",
|
|
"src": "6719:217:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9178
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9178,
|
|
"mutability": "mutable",
|
|
"name": "out",
|
|
"nameLocation": "6737:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9223,
|
|
"src": "6729:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9177,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6729:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9179,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6729:11:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9181
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9181,
|
|
"mutability": "mutable",
|
|
"name": "max",
|
|
"nameLocation": "6759:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9223,
|
|
"src": "6751:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9180,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6751:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9190,
|
|
"initialValue": {
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9185,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 9182,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9170,
|
|
"src": "6765:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9183,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "6767:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "6765:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">",
|
|
"rightExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9184,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6776:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"src": "6765:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"expression": {
|
|
"id": 9187,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9170,
|
|
"src": "6786:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9188,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "6788:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "6786:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9189,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "6765:29:10",
|
|
"trueExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9186,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6781:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6751:43:10"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 9219,
|
|
"nodeType": "Block",
|
|
"src": "6838:72:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 9217,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"id": 9201,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9178,
|
|
"src": "6852:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "|=",
|
|
"rightHandSide": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 9216,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"arguments": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
},
|
|
"id": 9210,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"baseExpression": {
|
|
"id": 9204,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9170,
|
|
"src": "6867:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9208,
|
|
"indexExpression": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9207,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9205,
|
|
"name": "offset",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9172,
|
|
"src": "6869:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "+",
|
|
"rightExpression": {
|
|
"id": 9206,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9192,
|
|
"src": "6878:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "6869:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "6867:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "&",
|
|
"rightExpression": {
|
|
"hexValue": "30784646",
|
|
"id": 9209,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6883:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_255_by_1",
|
|
"typeString": "int_const 255"
|
|
},
|
|
"value": "0xFF"
|
|
},
|
|
"src": "6867:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
],
|
|
"id": 9203,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "6859:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9202,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6859:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9211,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "6859:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">>",
|
|
"rightExpression": {
|
|
"components": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9214,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9212,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9192,
|
|
"src": "6893:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"hexValue": "38",
|
|
"id": 9213,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6897:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_8_by_1",
|
|
"typeString": "int_const 8"
|
|
},
|
|
"value": "8"
|
|
},
|
|
"src": "6893:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"id": 9215,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "6892:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "6859:40:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "6852:47:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9218,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6852:47:10"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9197,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9195,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9192,
|
|
"src": "6824:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"id": 9196,
|
|
"name": "max",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9181,
|
|
"src": "6828:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "6824:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9220,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
9192
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9192,
|
|
"mutability": "mutable",
|
|
"name": "i",
|
|
"nameLocation": "6817:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9220,
|
|
"src": "6809:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9191,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6809:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9194,
|
|
"initialValue": {
|
|
"hexValue": "30",
|
|
"id": 9193,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "6821:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "6809:13:10"
|
|
},
|
|
"isSimpleCounterLoop": true,
|
|
"loopExpression": {
|
|
"expression": {
|
|
"id": 9199,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "6833:3:10",
|
|
"subExpression": {
|
|
"id": 9198,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9192,
|
|
"src": "6833:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9200,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "6833:3:10"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "6804:106:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9221,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9178,
|
|
"src": "6926:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9176,
|
|
"id": 9222,
|
|
"nodeType": "Return",
|
|
"src": "6919:10:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "bytesToBytes32",
|
|
"nameLocation": "6641:14:10",
|
|
"parameters": {
|
|
"id": 9173,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9170,
|
|
"mutability": "mutable",
|
|
"name": "b",
|
|
"nameLocation": "6669:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9224,
|
|
"src": "6656:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9169,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6656:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9172,
|
|
"mutability": "mutable",
|
|
"name": "offset",
|
|
"nameLocation": "6680:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9224,
|
|
"src": "6672:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9171,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6672:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6655:32:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9176,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9175,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9224,
|
|
"src": "6710:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9174,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6710:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6709:9:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"id": 9265,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "6942:393:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9264,
|
|
"nodeType": "Block",
|
|
"src": "7015:320:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9233
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9233,
|
|
"mutability": "mutable",
|
|
"name": "result",
|
|
"nameLocation": "7038:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9264,
|
|
"src": "7025:19:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9232,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7025:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9241,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9239,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 9236,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9227,
|
|
"src": "7057:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9237,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7059:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "7057:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9238,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7068:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"src": "7057:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9235,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "NewExpression",
|
|
"src": "7047:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
},
|
|
"typeName": {
|
|
"id": 9234,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7051:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"id": 9240,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7047:24:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7025:46:10"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 9260,
|
|
"nodeType": "Block",
|
|
"src": "7120:185:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9254
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9254,
|
|
"mutability": "mutable",
|
|
"name": "k",
|
|
"nameLocation": "7142:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9260,
|
|
"src": "7134:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9253,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7134:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9258,
|
|
"initialValue": {
|
|
"baseExpression": {
|
|
"id": 9255,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9227,
|
|
"src": "7146:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9257,
|
|
"indexExpression": {
|
|
"id": 9256,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9243,
|
|
"src": "7148:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "7146:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7134:16:10"
|
|
},
|
|
{
|
|
"AST": {
|
|
"nativeSrc": "7220:75:10",
|
|
"nodeType": "YulBlock",
|
|
"src": "7220:75:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"name": "result",
|
|
"nativeSrc": "7249:6:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7249:6:10"
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"kind": "number",
|
|
"nativeSrc": "7261:2:10",
|
|
"nodeType": "YulLiteral",
|
|
"src": "7261:2:10",
|
|
"type": "",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"kind": "number",
|
|
"nativeSrc": "7269:2:10",
|
|
"nodeType": "YulLiteral",
|
|
"src": "7269:2:10",
|
|
"type": "",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"name": "i",
|
|
"nativeSrc": "7273:1:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7273:1:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "mul",
|
|
"nativeSrc": "7265:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7265:3:10"
|
|
},
|
|
"nativeSrc": "7265:10:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "7265:10:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "add",
|
|
"nativeSrc": "7257:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7257:3:10"
|
|
},
|
|
"nativeSrc": "7257:19:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "7257:19:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "add",
|
|
"nativeSrc": "7245:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7245:3:10"
|
|
},
|
|
"nativeSrc": "7245:32:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "7245:32:10"
|
|
},
|
|
{
|
|
"name": "k",
|
|
"nativeSrc": "7279:1:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7279:1:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "mstore",
|
|
"nativeSrc": "7238:6:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "7238:6:10"
|
|
},
|
|
"nativeSrc": "7238:43:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "7238:43:10"
|
|
},
|
|
"nativeSrc": "7238:43:10",
|
|
"nodeType": "YulExpressionStatement",
|
|
"src": "7238:43:10"
|
|
}
|
|
]
|
|
},
|
|
"documentation": "@solidity memory-safe-assembly",
|
|
"evmVersion": "paris",
|
|
"externalReferences": [
|
|
{
|
|
"declaration": 9243,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "7273:1:10",
|
|
"valueSize": 1
|
|
},
|
|
{
|
|
"declaration": 9254,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "7279:1:10",
|
|
"valueSize": 1
|
|
},
|
|
{
|
|
"declaration": 9233,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "7249:6:10",
|
|
"valueSize": 1
|
|
}
|
|
],
|
|
"id": 9259,
|
|
"nodeType": "InlineAssembly",
|
|
"src": "7211:84:10"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9249,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9246,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9243,
|
|
"src": "7101:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"expression": {
|
|
"id": 9247,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9227,
|
|
"src": "7105:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9248,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7107:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "7105:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "7101:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9261,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
9243
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9243,
|
|
"mutability": "mutable",
|
|
"name": "i",
|
|
"nameLocation": "7094:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9261,
|
|
"src": "7086:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9242,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7086:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9245,
|
|
"initialValue": {
|
|
"hexValue": "30",
|
|
"id": 9244,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7098:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "7086:13:10"
|
|
},
|
|
"isSimpleCounterLoop": true,
|
|
"loopExpression": {
|
|
"expression": {
|
|
"id": 9251,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "7115:3:10",
|
|
"subExpression": {
|
|
"id": 9250,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9243,
|
|
"src": "7115:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9252,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "7115:3:10"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "7081:224:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9262,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9233,
|
|
"src": "7322:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9231,
|
|
"id": 9263,
|
|
"nodeType": "Return",
|
|
"src": "7315:13:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "flatten",
|
|
"nameLocation": "6951:7:10",
|
|
"parameters": {
|
|
"id": 9228,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9227,
|
|
"mutability": "mutable",
|
|
"name": "b",
|
|
"nameLocation": "6976:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9265,
|
|
"src": "6959:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 9225,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "6959:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9226,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "6959:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "6958:20:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9231,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9230,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9265,
|
|
"src": "7001:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9229,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7001:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7000:14:10"
|
|
},
|
|
"scope": 9266,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "private"
|
|
}
|
|
],
|
|
"abstract": false,
|
|
"baseContracts": [],
|
|
"canonicalName": "stdStorageSafe",
|
|
"contractDependencies": [],
|
|
"contractKind": "library",
|
|
"fullyImplemented": true,
|
|
"linearizedBaseContracts": [
|
|
9266
|
|
],
|
|
"name": "stdStorageSafe",
|
|
"nameLocation": "376:14:10",
|
|
"scope": 9828,
|
|
"usedErrors": [],
|
|
"usedEvents": [
|
|
8384,
|
|
8390
|
|
]
|
|
},
|
|
{
|
|
"id": 9827,
|
|
"nodeType": "ContractDefinition",
|
|
"src": "7339:4665:10",
|
|
"nodes": [
|
|
{
|
|
"id": 9283,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "7364:84:10",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "vm",
|
|
"nameLocation": "7384:2:10",
|
|
"scope": 9827,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
},
|
|
"typeName": {
|
|
"id": 9268,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9267,
|
|
"name": "Vm",
|
|
"nameLocations": [
|
|
"7364:2:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 13464,
|
|
"src": "7364:2:10"
|
|
},
|
|
"referencedDeclaration": 13464,
|
|
"src": "7364:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"hexValue": "6865766d20636865617420636f6465",
|
|
"id": 9277,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "7426:17:10",
|
|
"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": 9276,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "7416:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9278,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7416:28:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 9275,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "7408:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 9274,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7408:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9279,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7408:37:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9273,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "7400:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 9272,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7400:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9280,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7400:46:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 9271,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "7392:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 9270,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7392:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9281,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7392:55:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 9269,
|
|
"name": "Vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 13464,
|
|
"src": "7389:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_Vm_$13464_$",
|
|
"typeString": "type(contract Vm)"
|
|
}
|
|
},
|
|
"id": 9282,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7389:59:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"id": 9296,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "7455:118:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9295,
|
|
"nodeType": "Block",
|
|
"src": "7522:51:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9292,
|
|
"name": "sigStr",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9285,
|
|
"src": "7559:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9290,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "7539:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9291,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7554:4:10",
|
|
"memberName": "sigs",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8425,
|
|
"src": "7539:19:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$",
|
|
"typeString": "function (string memory) pure returns (bytes4)"
|
|
}
|
|
},
|
|
"id": 9293,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7539:27:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9289,
|
|
"id": 9294,
|
|
"nodeType": "Return",
|
|
"src": "7532:34:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sigs",
|
|
"nameLocation": "7464:4:10",
|
|
"parameters": {
|
|
"id": 9286,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9285,
|
|
"mutability": "mutable",
|
|
"name": "sigStr",
|
|
"nameLocation": "7483:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9296,
|
|
"src": "7469:20:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 9284,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7469:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7468:22:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9289,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9288,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9296,
|
|
"src": "7514:6:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 9287,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7514:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7513:8:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9310,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "7579:115:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9309,
|
|
"nodeType": "Block",
|
|
"src": "7645:49:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9306,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9299,
|
|
"src": "7682:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9304,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "7662:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9305,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7677:4:10",
|
|
"memberName": "find",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8869,
|
|
"src": "7662:19:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_uint256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (uint256)"
|
|
}
|
|
},
|
|
"id": 9307,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7662:25:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9303,
|
|
"id": 9308,
|
|
"nodeType": "Return",
|
|
"src": "7655:32:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "find",
|
|
"nameLocation": "7588:4:10",
|
|
"parameters": {
|
|
"id": 9300,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9299,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "7612:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9310,
|
|
"src": "7593:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9298,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9297,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"7593:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "7593:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "7593:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7592:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9303,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9302,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9310,
|
|
"src": "7636:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9301,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7636:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7635:9:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9328,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "7700:156:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9327,
|
|
"nodeType": "Block",
|
|
"src": "7796:60:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9323,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9313,
|
|
"src": "7835:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9324,
|
|
"name": "_target",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9315,
|
|
"src": "7841:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9321,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "7813:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9322,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7828:6:10",
|
|
"memberName": "target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8889,
|
|
"src": "7813:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9325,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7813:36:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9320,
|
|
"id": 9326,
|
|
"nodeType": "Return",
|
|
"src": "7806:43:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "target",
|
|
"nameLocation": "7709:6:10",
|
|
"parameters": {
|
|
"id": 9316,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9313,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "7735:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9328,
|
|
"src": "7716:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9312,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9311,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"7716:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "7716:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "7716:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9315,
|
|
"mutability": "mutable",
|
|
"name": "_target",
|
|
"nameLocation": "7749:7:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9328,
|
|
"src": "7741:15:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9314,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7741:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7715:42:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9320,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9319,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9328,
|
|
"src": "7776:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9318,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9317,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"7776:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "7776:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "7776:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7775:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9346,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "7862:143:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9345,
|
|
"nodeType": "Block",
|
|
"src": "7951:54:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9341,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9331,
|
|
"src": "7987:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9342,
|
|
"name": "_sig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9333,
|
|
"src": "7993:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9339,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "7968:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9340,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "7983:3:10",
|
|
"memberName": "sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8909,
|
|
"src": "7968:18:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9343,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "7968:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9338,
|
|
"id": 9344,
|
|
"nodeType": "Return",
|
|
"src": "7961:37:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sig",
|
|
"nameLocation": "7871:3:10",
|
|
"parameters": {
|
|
"id": 9334,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9331,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "7894:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9346,
|
|
"src": "7875:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9330,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9329,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"7875:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "7875:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "7875:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9333,
|
|
"mutability": "mutable",
|
|
"name": "_sig",
|
|
"nameLocation": "7907:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9346,
|
|
"src": "7900:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 9332,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "7900:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7874:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9338,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9337,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9346,
|
|
"src": "7931:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9336,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9335,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"7931:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "7931:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "7931:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "7930:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9364,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8011:150:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9363,
|
|
"nodeType": "Block",
|
|
"src": "8107:54:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9359,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9349,
|
|
"src": "8143:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9360,
|
|
"name": "_sig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9351,
|
|
"src": "8149:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9357,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "8124:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9358,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "8139:3:10",
|
|
"memberName": "sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8931,
|
|
"src": "8124:18:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_string_memory_ptr_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,string memory) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9361,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8124:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9356,
|
|
"id": 9362,
|
|
"nodeType": "Return",
|
|
"src": "8117:37:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "sig",
|
|
"nameLocation": "8020:3:10",
|
|
"parameters": {
|
|
"id": 9352,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9349,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8043:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9364,
|
|
"src": "8024:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9348,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9347,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8024:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8024:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8024:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9351,
|
|
"mutability": "mutable",
|
|
"name": "_sig",
|
|
"nameLocation": "8063:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9364,
|
|
"src": "8049:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_memory_ptr",
|
|
"typeString": "string"
|
|
},
|
|
"typeName": {
|
|
"id": 9350,
|
|
"name": "string",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8049:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_string_storage_ptr",
|
|
"typeString": "string"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8023:45:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9356,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9355,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9364,
|
|
"src": "8087:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9354,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9353,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8087:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8087:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8087:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8086:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9382,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8167:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9381,
|
|
"nodeType": "Block",
|
|
"src": "8261:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9377,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9367,
|
|
"src": "8302:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9378,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9369,
|
|
"src": "8308:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9375,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "8278:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9376,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "8293:8:10",
|
|
"memberName": "with_key",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8962,
|
|
"src": "8278:23:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9379,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8278:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9374,
|
|
"id": 9380,
|
|
"nodeType": "Return",
|
|
"src": "8271:41:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "8176:8:10",
|
|
"parameters": {
|
|
"id": 9370,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9367,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8204:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9382,
|
|
"src": "8185:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9366,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9365,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8185:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8185:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8185:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9369,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "8218:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9382,
|
|
"src": "8210:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9368,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8210:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8184:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9374,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9373,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9382,
|
|
"src": "8241:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9372,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9371,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8241:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8241:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8241:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8240:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9400,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8325:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9399,
|
|
"nodeType": "Block",
|
|
"src": "8419:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9395,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9385,
|
|
"src": "8460:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9396,
|
|
"name": "amt",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9387,
|
|
"src": "8466:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9393,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "8436:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9394,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "8451:8:10",
|
|
"memberName": "with_key",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8987,
|
|
"src": "8436:23:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_uint256_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,uint256) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9397,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8436:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9392,
|
|
"id": 9398,
|
|
"nodeType": "Return",
|
|
"src": "8429:41:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "8334:8:10",
|
|
"parameters": {
|
|
"id": 9388,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9385,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8362:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9400,
|
|
"src": "8343:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9384,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9383,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8343:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8343:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8343:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9387,
|
|
"mutability": "mutable",
|
|
"name": "amt",
|
|
"nameLocation": "8376:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9400,
|
|
"src": "8368:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9386,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8368:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8342:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9392,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9391,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9400,
|
|
"src": "8399:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9390,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9389,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8399:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8399:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8399:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8398:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9418,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8483:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9417,
|
|
"nodeType": "Block",
|
|
"src": "8577:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9413,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9403,
|
|
"src": "8618:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9414,
|
|
"name": "key",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9405,
|
|
"src": "8624:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9411,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "8594:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9412,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "8609:8:10",
|
|
"memberName": "with_key",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9009,
|
|
"src": "8594:23:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes32_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes32) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9415,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8594:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9410,
|
|
"id": 9416,
|
|
"nodeType": "Return",
|
|
"src": "8587:41:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "with_key",
|
|
"nameLocation": "8492:8:10",
|
|
"parameters": {
|
|
"id": 9406,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9403,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8520:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9418,
|
|
"src": "8501:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9402,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9401,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8501:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8501:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8501:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9405,
|
|
"mutability": "mutable",
|
|
"name": "key",
|
|
"nameLocation": "8534:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9418,
|
|
"src": "8526:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9404,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8526:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8500:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9410,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9409,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9418,
|
|
"src": "8557:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9408,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9407,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8557:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8557:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8557:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8556:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9436,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8641:152:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9435,
|
|
"nodeType": "Block",
|
|
"src": "8735:58:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9431,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9421,
|
|
"src": "8773:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9432,
|
|
"name": "_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9423,
|
|
"src": "8779:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9429,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "8752:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9430,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "8767:5:10",
|
|
"memberName": "depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9029,
|
|
"src": "8752:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_uint256_$returns$_t_struct$_StdStorage_$8374_storage_ptr_$",
|
|
"typeString": "function (struct StdStorage storage pointer,uint256) returns (struct StdStorage storage pointer)"
|
|
}
|
|
},
|
|
"id": 9433,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8752:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9428,
|
|
"id": 9434,
|
|
"nodeType": "Return",
|
|
"src": "8745:41:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "depth",
|
|
"nameLocation": "8650:5:10",
|
|
"parameters": {
|
|
"id": 9424,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9421,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8675:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9436,
|
|
"src": "8656:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9420,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9419,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8656:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8656:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8656:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9423,
|
|
"mutability": "mutable",
|
|
"name": "_depth",
|
|
"nameLocation": "8689:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9436,
|
|
"src": "8681:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9422,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8681:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8655:41:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9428,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9427,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9436,
|
|
"src": "8715:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9426,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9425,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8715:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8715:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8715:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8714:20:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9459,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8799:138:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9458,
|
|
"nodeType": "Block",
|
|
"src": "8869:68:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9445,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9439,
|
|
"src": "8893:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9452,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9441,
|
|
"src": "8923:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 9451,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "8915:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 9450,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8915:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9453,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8915:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 9449,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "8907:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 9448,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8907:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9454,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8907:21:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9447,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "8899:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9446,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8899:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9455,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8899:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 9444,
|
|
"name": "checked_write",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
9459,
|
|
9476,
|
|
9514,
|
|
9659
|
|
],
|
|
"referencedDeclaration": 9659,
|
|
"src": "8879:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 9456,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "8879:51:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9457,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "8879:51:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "checked_write",
|
|
"nameLocation": "8808:13:10",
|
|
"parameters": {
|
|
"id": 9442,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9439,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8841:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9459,
|
|
"src": "8822:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9438,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9437,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8822:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8822:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8822:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9441,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "8855:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9459,
|
|
"src": "8847:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9440,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8847:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8821:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9443,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "8869:0:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9476,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "8943:120:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9475,
|
|
"nodeType": "Block",
|
|
"src": "9013:50:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9468,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9462,
|
|
"src": "9037:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9471,
|
|
"name": "amt",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9464,
|
|
"src": "9051:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9470,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "9043:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9469,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9043:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9472,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9043:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 9467,
|
|
"name": "checked_write",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
9459,
|
|
9476,
|
|
9514,
|
|
9659
|
|
],
|
|
"referencedDeclaration": 9659,
|
|
"src": "9023:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 9473,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9023:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9474,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9023:33:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "checked_write",
|
|
"nameLocation": "8952:13:10",
|
|
"parameters": {
|
|
"id": 9465,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9462,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "8985:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9476,
|
|
"src": "8966:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9461,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9460,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"8966:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "8966:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "8966:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9464,
|
|
"mutability": "mutable",
|
|
"name": "amt",
|
|
"nameLocation": "8999:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9476,
|
|
"src": "8991:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9463,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "8991:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "8965:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9466,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "9013:0:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9496,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "9069:132:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9495,
|
|
"nodeType": "Block",
|
|
"src": "9142:59:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9485,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9479,
|
|
"src": "9166:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9490,
|
|
"name": "val",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9481,
|
|
"src": "9188:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
],
|
|
"id": 9489,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "9180:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 9488,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9180:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9491,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9180:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9487,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "9172:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9486,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9172:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9492,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9172:21:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 9484,
|
|
"name": "checked_write",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
9459,
|
|
9476,
|
|
9514,
|
|
9659
|
|
],
|
|
"referencedDeclaration": 9659,
|
|
"src": "9152:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 9493,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9152:42:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9494,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9152:42:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "checked_write_int",
|
|
"nameLocation": "9078:17:10",
|
|
"parameters": {
|
|
"id": 9482,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9479,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "9115:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9496,
|
|
"src": "9096:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9478,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9477,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"9096:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "9096:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "9096:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9481,
|
|
"mutability": "mutable",
|
|
"name": "val",
|
|
"nameLocation": "9128:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9496,
|
|
"src": "9121:10:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"typeName": {
|
|
"id": 9480,
|
|
"name": "int256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9121:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "9095:37:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9483,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "9142:0:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9514,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "9207:222:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9513,
|
|
"nodeType": "Block",
|
|
"src": "9276:153:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9505
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9505,
|
|
"mutability": "mutable",
|
|
"name": "t",
|
|
"nameLocation": "9294:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9513,
|
|
"src": "9286:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9504,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9286:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9506,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9286:9:10"
|
|
},
|
|
{
|
|
"AST": {
|
|
"nativeSrc": "9357:34:10",
|
|
"nodeType": "YulBlock",
|
|
"src": "9357:34:10",
|
|
"statements": [
|
|
{
|
|
"nativeSrc": "9371:10:10",
|
|
"nodeType": "YulAssignment",
|
|
"src": "9371:10:10",
|
|
"value": {
|
|
"name": "write",
|
|
"nativeSrc": "9376:5:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "9376:5:10"
|
|
},
|
|
"variableNames": [
|
|
{
|
|
"name": "t",
|
|
"nativeSrc": "9371:1:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "9371:1:10"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"documentation": "@solidity memory-safe-assembly",
|
|
"evmVersion": "paris",
|
|
"externalReferences": [
|
|
{
|
|
"declaration": 9505,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "9371:1:10",
|
|
"valueSize": 1
|
|
},
|
|
{
|
|
"declaration": 9501,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "9376:5:10",
|
|
"valueSize": 1
|
|
}
|
|
],
|
|
"id": 9507,
|
|
"nodeType": "InlineAssembly",
|
|
"src": "9348:43:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9509,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9499,
|
|
"src": "9414:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
{
|
|
"id": 9510,
|
|
"name": "t",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9505,
|
|
"src": "9420:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 9508,
|
|
"name": "checked_write",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
9459,
|
|
9476,
|
|
9514,
|
|
9659
|
|
],
|
|
"referencedDeclaration": 9659,
|
|
"src": "9400:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (struct StdStorage storage pointer,bytes32)"
|
|
}
|
|
},
|
|
"id": 9511,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9400:22:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9512,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9400:22:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "checked_write",
|
|
"nameLocation": "9216:13:10",
|
|
"parameters": {
|
|
"id": 9502,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9499,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "9249:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9514,
|
|
"src": "9230:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9498,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9497,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"9230:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "9230:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "9230:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9501,
|
|
"mutability": "mutable",
|
|
"name": "write",
|
|
"nameLocation": "9260:5:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9514,
|
|
"src": "9255:10:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 9500,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9255:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "9229:37:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9503,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "9276:0:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9659,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "9435:1095:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9658,
|
|
"nodeType": "Block",
|
|
"src": "9505:1025:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9523
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9523,
|
|
"mutability": "mutable",
|
|
"name": "who",
|
|
"nameLocation": "9523:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9515:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9522,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9515:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9526,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 9524,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9529:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9525,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9534:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "9529:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9515:26:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9528
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9528,
|
|
"mutability": "mutable",
|
|
"name": "fsig",
|
|
"nameLocation": "9558:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9551:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
"typeName": {
|
|
"id": 9527,
|
|
"name": "bytes4",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9551:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9531,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 9529,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9565:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9530,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9570:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "9565:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9551:23:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9533
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9533,
|
|
"mutability": "mutable",
|
|
"name": "field_depth",
|
|
"nameLocation": "9592:11:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9584:19:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9532,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9584:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9536,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 9534,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9606:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9535,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9611:6:10",
|
|
"memberName": "_depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8369,
|
|
"src": "9606:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9584:33:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9541
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9541,
|
|
"mutability": "mutable",
|
|
"name": "ins",
|
|
"nameLocation": "9644:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9627:20:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 9539,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9627:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9540,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "9627:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9544,
|
|
"initialValue": {
|
|
"expression": {
|
|
"id": 9542,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9650:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9543,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9655:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "9650:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9627:33:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9546
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9546,
|
|
"mutability": "mutable",
|
|
"name": "cald",
|
|
"nameLocation": "9684:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9671:17:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9545,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9671:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9554,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 9549,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9528,
|
|
"src": "9708:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9551,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9541,
|
|
"src": "9722:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
],
|
|
"id": 9550,
|
|
"name": "flatten",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9826,
|
|
"src": "9714:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (bytes32[] memory) pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9552,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9714:12:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9547,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "9691:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9548,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9695:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "9691:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9553,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9691:36:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9671:56:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"id": 9569,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "!",
|
|
"prefix": true,
|
|
"src": "9741:69:10",
|
|
"subExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 9555,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9742:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9556,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9747:5:10",
|
|
"memberName": "finds",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8362,
|
|
"src": "9742:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))"
|
|
}
|
|
},
|
|
"id": 9558,
|
|
"indexExpression": {
|
|
"id": 9557,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9523,
|
|
"src": "9753:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9742:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => bool))"
|
|
}
|
|
},
|
|
"id": 9560,
|
|
"indexExpression": {
|
|
"id": 9559,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9528,
|
|
"src": "9758:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9742:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$",
|
|
"typeString": "mapping(bytes32 => bool)"
|
|
}
|
|
},
|
|
"id": 9568,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9564,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9541,
|
|
"src": "9791:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 9565,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9533,
|
|
"src": "9796:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9562,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "9774:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9563,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9778:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "9774:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9566,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9774:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 9561,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "9764:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9567,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9764:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9742:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9575,
|
|
"nodeType": "IfStatement",
|
|
"src": "9737:110:10",
|
|
"trueBody": {
|
|
"id": 9574,
|
|
"nodeType": "Block",
|
|
"src": "9812:35:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9571,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9831:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"id": 9570,
|
|
"name": "find",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9310,
|
|
"src": "9826:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_uint256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (uint256)"
|
|
}
|
|
},
|
|
"id": 9572,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9826:10:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9573,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "9826:10:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"assignments": [
|
|
9577
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9577,
|
|
"mutability": "mutable",
|
|
"name": "slot",
|
|
"nameLocation": "9864:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9856:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9576,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9856:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9595,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"baseExpression": {
|
|
"expression": {
|
|
"id": 9580,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "9879:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9581,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9884:5:10",
|
|
"memberName": "slots",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8354,
|
|
"src": "9879:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$",
|
|
"typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))"
|
|
}
|
|
},
|
|
"id": 9583,
|
|
"indexExpression": {
|
|
"id": 9582,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9523,
|
|
"src": "9890:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9879:15:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$",
|
|
"typeString": "mapping(bytes4 => mapping(bytes32 => uint256))"
|
|
}
|
|
},
|
|
"id": 9585,
|
|
"indexExpression": {
|
|
"id": 9584,
|
|
"name": "fsig",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9528,
|
|
"src": "9895:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9879:21:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
|
|
"typeString": "mapping(bytes32 => uint256)"
|
|
}
|
|
},
|
|
"id": 9593,
|
|
"indexExpression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"id": 9589,
|
|
"name": "ins",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9541,
|
|
"src": "9928:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
{
|
|
"id": 9590,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9533,
|
|
"src": "9933:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9587,
|
|
"name": "abi",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -1,
|
|
"src": "9911:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_magic_abi",
|
|
"typeString": "abi"
|
|
}
|
|
},
|
|
"id": 9588,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"memberLocation": "9915:12:10",
|
|
"memberName": "encodePacked",
|
|
"nodeType": "MemberAccess",
|
|
"src": "9911:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function () pure returns (bytes memory)"
|
|
}
|
|
},
|
|
"id": 9591,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9911:34:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"id": 9586,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "9901:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9592,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9901:45:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "9879:68:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9579,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "9871:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9578,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9871:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9594,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "9871:77:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9856:92:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9597
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9597,
|
|
"mutability": "mutable",
|
|
"name": "fdat",
|
|
"nameLocation": "9967:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "9959:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9596,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9959:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9598,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9959:12:10"
|
|
},
|
|
{
|
|
"id": 9615,
|
|
"nodeType": "Block",
|
|
"src": "9981:128:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
null,
|
|
9600
|
|
],
|
|
"declarations": [
|
|
null,
|
|
{
|
|
"constant": false,
|
|
"id": 9600,
|
|
"mutability": "mutable",
|
|
"name": "rdat",
|
|
"nameLocation": "10011:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9615,
|
|
"src": "9998:17:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9599,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9998:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9605,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 9603,
|
|
"name": "cald",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9546,
|
|
"src": "10034:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9601,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9523,
|
|
"src": "10019:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"id": 9602,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10023:10:10",
|
|
"memberName": "staticcall",
|
|
"nodeType": "MemberAccess",
|
|
"src": "10019:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_barestaticcall_view$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (bytes memory) view returns (bool,bytes memory)"
|
|
}
|
|
},
|
|
"id": 9604,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10019:20:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$",
|
|
"typeString": "tuple(bool,bytes memory)"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "9995:44:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9613,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"id": 9606,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9597,
|
|
"src": "10053:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "=",
|
|
"rightHandSide": {
|
|
"arguments": [
|
|
{
|
|
"id": 9608,
|
|
"name": "rdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9600,
|
|
"src": "10075:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9611,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9609,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10081:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"id": 9610,
|
|
"name": "field_depth",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9533,
|
|
"src": "10086:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "10081:16:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9607,
|
|
"name": "bytesToBytes32",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9785,
|
|
"src": "10060:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory,uint256) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9612,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10060:38:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "10053:45:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9614,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10053:45:10"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"assignments": [
|
|
9617
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9617,
|
|
"mutability": "mutable",
|
|
"name": "curr",
|
|
"nameLocation": "10126:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9658,
|
|
"src": "10118:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9616,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10118:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9623,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"id": 9620,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9523,
|
|
"src": "10141:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"id": 9621,
|
|
"name": "slot",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9577,
|
|
"src": "10146:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9618,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9283,
|
|
"src": "10133:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 9619,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10136:4:10",
|
|
"memberName": "load",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 11994,
|
|
"src": "10133:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_view$_t_address_$_t_bytes32_$returns$_t_bytes32_$",
|
|
"typeString": "function (address,bytes32) view external returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9622,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10133:18:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "10118:33:10"
|
|
},
|
|
{
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 9626,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9624,
|
|
"name": "fdat",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9597,
|
|
"src": "10166:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "!=",
|
|
"rightExpression": {
|
|
"id": 9625,
|
|
"name": "curr",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9617,
|
|
"src": "10174:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "10166:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9633,
|
|
"nodeType": "IfStatement",
|
|
"src": "10162:218:10",
|
|
"trueBody": {
|
|
"id": 9632,
|
|
"nodeType": "Block",
|
|
"src": "10180:200:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"hexValue": "66616c7365",
|
|
"id": 9628,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "bool",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10219:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"value": "false"
|
|
},
|
|
{
|
|
"hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e",
|
|
"id": 9629,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "10242:113:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\""
|
|
},
|
|
"value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported."
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3",
|
|
"typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\""
|
|
}
|
|
],
|
|
"id": 9627,
|
|
"name": "require",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [
|
|
-18,
|
|
-18
|
|
],
|
|
"referencedDeclaration": -18,
|
|
"src": "10194:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
|
"typeString": "function (bool,string memory) pure"
|
|
}
|
|
},
|
|
"id": 9630,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10194:175:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9631,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10194:175:10"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9637,
|
|
"name": "who",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9523,
|
|
"src": "10398:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
{
|
|
"id": 9638,
|
|
"name": "slot",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9577,
|
|
"src": "10403:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
{
|
|
"id": 9639,
|
|
"name": "set",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9519,
|
|
"src": "10409:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9634,
|
|
"name": "vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9283,
|
|
"src": "10389:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"id": 9636,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10392:5:10",
|
|
"memberName": "store",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 13038,
|
|
"src": "10389:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$",
|
|
"typeString": "function (address,bytes32,bytes32) external"
|
|
}
|
|
},
|
|
"id": 9640,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10389:24:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9641,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10389:24:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9644,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "10423:19:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 9642,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "10430:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9643,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "10435:7:10",
|
|
"memberName": "_target",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8371,
|
|
"src": "10430:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9645,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10423:19:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9648,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "10452:16:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 9646,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "10459:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9647,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "10464:4:10",
|
|
"memberName": "_sig",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8367,
|
|
"src": "10459:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes4",
|
|
"typeString": "bytes4"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9649,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10452:16:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9652,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "10478:17:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 9650,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "10485:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9651,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "10490:5:10",
|
|
"memberName": "_keys",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8365,
|
|
"src": "10485:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage",
|
|
"typeString": "bytes32[] storage ref"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9653,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10478:17:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9656,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "delete",
|
|
"prefix": true,
|
|
"src": "10505:18:10",
|
|
"subExpression": {
|
|
"expression": {
|
|
"id": 9654,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9517,
|
|
"src": "10512:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
},
|
|
"id": 9655,
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": true,
|
|
"memberLocation": "10517:6:10",
|
|
"memberName": "_depth",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 8369,
|
|
"src": "10512:11:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_tuple$__$",
|
|
"typeString": "tuple()"
|
|
}
|
|
},
|
|
"id": 9657,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "10505:18:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "checked_write",
|
|
"nameLocation": "9444:13:10",
|
|
"parameters": {
|
|
"id": 9520,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9517,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "9477:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9659,
|
|
"src": "9458:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9516,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9515,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"9458:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "9458:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "9458:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9519,
|
|
"mutability": "mutable",
|
|
"name": "set",
|
|
"nameLocation": "9491:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9659,
|
|
"src": "9483:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9518,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "9483:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "9457:38:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9521,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [],
|
|
"src": "9505:0:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9673,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "10536:131:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9672,
|
|
"nodeType": "Block",
|
|
"src": "10610:57:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9669,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9662,
|
|
"src": "10655:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9667,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "10627:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9668,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10642:12:10",
|
|
"memberName": "read_bytes32",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9080,
|
|
"src": "10627:27:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 9670,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10627:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9666,
|
|
"id": 9671,
|
|
"nodeType": "Return",
|
|
"src": "10620:40:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_bytes32",
|
|
"nameLocation": "10545:12:10",
|
|
"parameters": {
|
|
"id": 9663,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9662,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "10577:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9673,
|
|
"src": "10558:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9661,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9660,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"10558:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "10558:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "10558:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10557:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9666,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9665,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9673,
|
|
"src": "10601:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9664,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10601:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10600:9:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9687,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "10673:122:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9686,
|
|
"nodeType": "Block",
|
|
"src": "10741:54:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9683,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9676,
|
|
"src": "10783:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9681,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "10758:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9682,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10773:9:10",
|
|
"memberName": "read_bool",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9111,
|
|
"src": "10758:24:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_bool_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (bool)"
|
|
}
|
|
},
|
|
"id": 9684,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10758:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9680,
|
|
"id": 9685,
|
|
"nodeType": "Return",
|
|
"src": "10751:37:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_bool",
|
|
"nameLocation": "10682:9:10",
|
|
"parameters": {
|
|
"id": 9677,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9676,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "10711:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9687,
|
|
"src": "10692:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9675,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9674,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"10692:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "10692:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "10692:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10691:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9680,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9679,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9687,
|
|
"src": "10735:4:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
},
|
|
"typeName": {
|
|
"id": 9678,
|
|
"name": "bool",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10735:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10734:6:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9701,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "10801:131:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9700,
|
|
"nodeType": "Block",
|
|
"src": "10875:57:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9697,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9690,
|
|
"src": "10920:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9695,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "10892:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9696,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "10907:12:10",
|
|
"memberName": "read_address",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9130,
|
|
"src": "10892:27:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_address_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (address)"
|
|
}
|
|
},
|
|
"id": 9698,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "10892:33:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9694,
|
|
"id": 9699,
|
|
"nodeType": "Return",
|
|
"src": "10885:40:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_address",
|
|
"nameLocation": "10810:12:10",
|
|
"parameters": {
|
|
"id": 9691,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9690,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "10842:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9701,
|
|
"src": "10823:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9689,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9688,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"10823:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "10823:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "10823:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10822:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9694,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9693,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9701,
|
|
"src": "10866:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 9692,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "10866:7:10",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10865:9:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9715,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "10938:125:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9714,
|
|
"nodeType": "Block",
|
|
"src": "11009:54:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9711,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9704,
|
|
"src": "11051:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9709,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "11026:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9710,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11041:9:10",
|
|
"memberName": "read_uint",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9149,
|
|
"src": "11026:24:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_uint256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (uint256)"
|
|
}
|
|
},
|
|
"id": 9712,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11026:30:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9708,
|
|
"id": 9713,
|
|
"nodeType": "Return",
|
|
"src": "11019:37:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_uint",
|
|
"nameLocation": "10947:9:10",
|
|
"parameters": {
|
|
"id": 9705,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9704,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "10976:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9715,
|
|
"src": "10957:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9703,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9702,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"10957:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "10957:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "10957:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10956:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9708,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9707,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9715,
|
|
"src": "11000:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9706,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11000:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "10999:9:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9729,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "11069:122:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9728,
|
|
"nodeType": "Block",
|
|
"src": "11138:53:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"id": 9725,
|
|
"name": "self",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9718,
|
|
"src": "11179:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage storage pointer"
|
|
}
|
|
],
|
|
"expression": {
|
|
"id": 9723,
|
|
"name": "stdStorageSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9266,
|
|
"src": "11155:14:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_stdStorageSafe_$9266_$",
|
|
"typeString": "type(library stdStorageSafe)"
|
|
}
|
|
},
|
|
"id": 9724,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11170:8:10",
|
|
"memberName": "read_int",
|
|
"nodeType": "MemberAccess",
|
|
"referencedDeclaration": 9168,
|
|
"src": "11155:23:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$8374_storage_ptr_$returns$_t_int256_$",
|
|
"typeString": "function (struct StdStorage storage pointer) returns (int256)"
|
|
}
|
|
},
|
|
"id": 9726,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11155:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9722,
|
|
"id": 9727,
|
|
"nodeType": "Return",
|
|
"src": "11148:36:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "read_int",
|
|
"nameLocation": "11078:8:10",
|
|
"parameters": {
|
|
"id": 9719,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9718,
|
|
"mutability": "mutable",
|
|
"name": "self",
|
|
"nameLocation": "11106:4:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9729,
|
|
"src": "11087:23:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "storage",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 9717,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 9716,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"11087:10:10"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "11087:10:10"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "11087:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11086:25:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9722,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9721,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9729,
|
|
"src": "11130:6:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
},
|
|
"typeName": {
|
|
"id": 9720,
|
|
"name": "int256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11130:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_int256",
|
|
"typeString": "int256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11129:8:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "nonpayable",
|
|
"virtual": false,
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 9785,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "11248:304:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9784,
|
|
"nodeType": "Block",
|
|
"src": "11335:217:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9739
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9739,
|
|
"mutability": "mutable",
|
|
"name": "out",
|
|
"nameLocation": "11353:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9784,
|
|
"src": "11345:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9738,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11345:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9740,
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11345:11:10"
|
|
},
|
|
{
|
|
"assignments": [
|
|
9742
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9742,
|
|
"mutability": "mutable",
|
|
"name": "max",
|
|
"nameLocation": "11375:3:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9784,
|
|
"src": "11367:11:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9741,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11367:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9751,
|
|
"initialValue": {
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9746,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 9743,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9731,
|
|
"src": "11381:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9744,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11383:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "11381:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">",
|
|
"rightExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9745,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11392:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"src": "11381:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"falseExpression": {
|
|
"expression": {
|
|
"id": 9748,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9731,
|
|
"src": "11402:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9749,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11404:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "11402:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9750,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "Conditional",
|
|
"src": "11381:29:10",
|
|
"trueExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9747,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11397:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11367:43:10"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 9780,
|
|
"nodeType": "Block",
|
|
"src": "11454:72:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"id": 9778,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftHandSide": {
|
|
"id": 9762,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9739,
|
|
"src": "11468:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "Assignment",
|
|
"operator": "|=",
|
|
"rightHandSide": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"id": 9777,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"arguments": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
},
|
|
"id": 9771,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"baseExpression": {
|
|
"id": 9765,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9731,
|
|
"src": "11483:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"id": 9769,
|
|
"indexExpression": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9768,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9766,
|
|
"name": "offset",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9733,
|
|
"src": "11485:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "+",
|
|
"rightExpression": {
|
|
"id": 9767,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9753,
|
|
"src": "11494:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "11485:10:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11483:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "&",
|
|
"rightExpression": {
|
|
"hexValue": "30784646",
|
|
"id": 9770,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11499:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_255_by_1",
|
|
"typeString": "int_const 255"
|
|
},
|
|
"value": "0xFF"
|
|
},
|
|
"src": "11483:20:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes1",
|
|
"typeString": "bytes1"
|
|
}
|
|
],
|
|
"id": 9764,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "11475:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_bytes32_$",
|
|
"typeString": "type(bytes32)"
|
|
},
|
|
"typeName": {
|
|
"id": 9763,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11475:7:10",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 9772,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11475:29:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": ">>",
|
|
"rightExpression": {
|
|
"components": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9775,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9773,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9753,
|
|
"src": "11509:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"hexValue": "38",
|
|
"id": 9774,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11513:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_8_by_1",
|
|
"typeString": "int_const 8"
|
|
},
|
|
"value": "8"
|
|
},
|
|
"src": "11509:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"id": 9776,
|
|
"isConstant": false,
|
|
"isInlineArray": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "TupleExpression",
|
|
"src": "11508:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "11475:40:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"src": "11468:47:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9779,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11468:47:10"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9758,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9756,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9753,
|
|
"src": "11440:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"id": 9757,
|
|
"name": "max",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9742,
|
|
"src": "11444:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "11440:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9781,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
9753
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9753,
|
|
"mutability": "mutable",
|
|
"name": "i",
|
|
"nameLocation": "11433:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9781,
|
|
"src": "11425:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9752,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11425:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9755,
|
|
"initialValue": {
|
|
"hexValue": "30",
|
|
"id": 9754,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11437:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11425:13:10"
|
|
},
|
|
"isSimpleCounterLoop": true,
|
|
"loopExpression": {
|
|
"expression": {
|
|
"id": 9760,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "11449:3:10",
|
|
"subExpression": {
|
|
"id": 9759,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9753,
|
|
"src": "11449:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9761,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11449:3:10"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "11420:106:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9782,
|
|
"name": "out",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9739,
|
|
"src": "11542:3:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9737,
|
|
"id": 9783,
|
|
"nodeType": "Return",
|
|
"src": "11535:10:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "bytesToBytes32",
|
|
"nameLocation": "11257:14:10",
|
|
"parameters": {
|
|
"id": 9734,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9731,
|
|
"mutability": "mutable",
|
|
"name": "b",
|
|
"nameLocation": "11285:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9785,
|
|
"src": "11272:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9730,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11272:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"constant": false,
|
|
"id": 9733,
|
|
"mutability": "mutable",
|
|
"name": "offset",
|
|
"nameLocation": "11296:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9785,
|
|
"src": "11288:14:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9732,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11288:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11271:32:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9737,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9736,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9785,
|
|
"src": "11326:7:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9735,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11326:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11325:9:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "private"
|
|
},
|
|
{
|
|
"id": 9826,
|
|
"nodeType": "FunctionDefinition",
|
|
"src": "11609:393:10",
|
|
"nodes": [],
|
|
"body": {
|
|
"id": 9825,
|
|
"nodeType": "Block",
|
|
"src": "11682:320:10",
|
|
"nodes": [],
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9794
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9794,
|
|
"mutability": "mutable",
|
|
"name": "result",
|
|
"nameLocation": "11705:6:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9825,
|
|
"src": "11692:19:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9793,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11692:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9802,
|
|
"initialValue": {
|
|
"arguments": [
|
|
{
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9800,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"expression": {
|
|
"id": 9797,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9788,
|
|
"src": "11724:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9798,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11726:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "11724:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "*",
|
|
"rightExpression": {
|
|
"hexValue": "3332",
|
|
"id": 9799,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11735:2:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_32_by_1",
|
|
"typeString": "int_const 32"
|
|
},
|
|
"value": "32"
|
|
},
|
|
"src": "11724:13:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 9796,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "NewExpression",
|
|
"src": "11714:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
|
|
"typeString": "function (uint256) pure returns (bytes memory)"
|
|
},
|
|
"typeName": {
|
|
"id": 9795,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11718:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
}
|
|
},
|
|
"id": 9801,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "11714:24:10",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11692:46:10"
|
|
},
|
|
{
|
|
"body": {
|
|
"id": 9821,
|
|
"nodeType": "Block",
|
|
"src": "11787:185:10",
|
|
"statements": [
|
|
{
|
|
"assignments": [
|
|
9815
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9815,
|
|
"mutability": "mutable",
|
|
"name": "k",
|
|
"nameLocation": "11809:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9821,
|
|
"src": "11801:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
},
|
|
"typeName": {
|
|
"id": 9814,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11801:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9819,
|
|
"initialValue": {
|
|
"baseExpression": {
|
|
"id": 9816,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9788,
|
|
"src": "11813:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9818,
|
|
"indexExpression": {
|
|
"id": 9817,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9804,
|
|
"src": "11815:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"isConstant": false,
|
|
"isLValue": true,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "IndexAccess",
|
|
"src": "11813:4:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11801:16:10"
|
|
},
|
|
{
|
|
"AST": {
|
|
"nativeSrc": "11887:75:10",
|
|
"nodeType": "YulBlock",
|
|
"src": "11887:75:10",
|
|
"statements": [
|
|
{
|
|
"expression": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"name": "result",
|
|
"nativeSrc": "11916:6:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11916:6:10"
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"kind": "number",
|
|
"nativeSrc": "11928:2:10",
|
|
"nodeType": "YulLiteral",
|
|
"src": "11928:2:10",
|
|
"type": "",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"arguments": [
|
|
{
|
|
"kind": "number",
|
|
"nativeSrc": "11936:2:10",
|
|
"nodeType": "YulLiteral",
|
|
"src": "11936:2:10",
|
|
"type": "",
|
|
"value": "32"
|
|
},
|
|
{
|
|
"name": "i",
|
|
"nativeSrc": "11940:1:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11940:1:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "mul",
|
|
"nativeSrc": "11932:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11932:3:10"
|
|
},
|
|
"nativeSrc": "11932:10:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "11932:10:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "add",
|
|
"nativeSrc": "11924:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11924:3:10"
|
|
},
|
|
"nativeSrc": "11924:19:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "11924:19:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "add",
|
|
"nativeSrc": "11912:3:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11912:3:10"
|
|
},
|
|
"nativeSrc": "11912:32:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "11912:32:10"
|
|
},
|
|
{
|
|
"name": "k",
|
|
"nativeSrc": "11946:1:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11946:1:10"
|
|
}
|
|
],
|
|
"functionName": {
|
|
"name": "mstore",
|
|
"nativeSrc": "11905:6:10",
|
|
"nodeType": "YulIdentifier",
|
|
"src": "11905:6:10"
|
|
},
|
|
"nativeSrc": "11905:43:10",
|
|
"nodeType": "YulFunctionCall",
|
|
"src": "11905:43:10"
|
|
},
|
|
"nativeSrc": "11905:43:10",
|
|
"nodeType": "YulExpressionStatement",
|
|
"src": "11905:43:10"
|
|
}
|
|
]
|
|
},
|
|
"documentation": "@solidity memory-safe-assembly",
|
|
"evmVersion": "paris",
|
|
"externalReferences": [
|
|
{
|
|
"declaration": 9804,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "11940:1:10",
|
|
"valueSize": 1
|
|
},
|
|
{
|
|
"declaration": 9815,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "11946:1:10",
|
|
"valueSize": 1
|
|
},
|
|
{
|
|
"declaration": 9794,
|
|
"isOffset": false,
|
|
"isSlot": false,
|
|
"src": "11916:6:10",
|
|
"valueSize": 1
|
|
}
|
|
],
|
|
"id": 9820,
|
|
"nodeType": "InlineAssembly",
|
|
"src": "11878:84:10"
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"commonType": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"id": 9810,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"leftExpression": {
|
|
"id": 9807,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9804,
|
|
"src": "11768:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"nodeType": "BinaryOperation",
|
|
"operator": "<",
|
|
"rightExpression": {
|
|
"expression": {
|
|
"id": 9808,
|
|
"name": "b",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9788,
|
|
"src": "11772:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[] memory"
|
|
}
|
|
},
|
|
"id": 9809,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"memberLocation": "11774:6:10",
|
|
"memberName": "length",
|
|
"nodeType": "MemberAccess",
|
|
"src": "11772:8:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"src": "11768:12:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bool",
|
|
"typeString": "bool"
|
|
}
|
|
},
|
|
"id": 9822,
|
|
"initializationExpression": {
|
|
"assignments": [
|
|
9804
|
|
],
|
|
"declarations": [
|
|
{
|
|
"constant": false,
|
|
"id": 9804,
|
|
"mutability": "mutable",
|
|
"name": "i",
|
|
"nameLocation": "11761:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9822,
|
|
"src": "11753:9:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 9803,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11753:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"id": 9806,
|
|
"initialValue": {
|
|
"hexValue": "30",
|
|
"id": 9805,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "11765:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_0_by_1",
|
|
"typeString": "int_const 0"
|
|
},
|
|
"value": "0"
|
|
},
|
|
"nodeType": "VariableDeclarationStatement",
|
|
"src": "11753:13:10"
|
|
},
|
|
"isSimpleCounterLoop": true,
|
|
"loopExpression": {
|
|
"expression": {
|
|
"id": 9812,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": false,
|
|
"lValueRequested": false,
|
|
"nodeType": "UnaryOperation",
|
|
"operator": "++",
|
|
"prefix": false,
|
|
"src": "11782:3:10",
|
|
"subExpression": {
|
|
"id": 9811,
|
|
"name": "i",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9804,
|
|
"src": "11782:1:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"id": 9813,
|
|
"nodeType": "ExpressionStatement",
|
|
"src": "11782:3:10"
|
|
},
|
|
"nodeType": "ForStatement",
|
|
"src": "11748:224:10"
|
|
},
|
|
{
|
|
"expression": {
|
|
"id": 9823,
|
|
"name": "result",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 9794,
|
|
"src": "11989:6:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes memory"
|
|
}
|
|
},
|
|
"functionReturnParameters": 9792,
|
|
"id": 9824,
|
|
"nodeType": "Return",
|
|
"src": "11982:13:10"
|
|
}
|
|
]
|
|
},
|
|
"implemented": true,
|
|
"kind": "function",
|
|
"modifiers": [],
|
|
"name": "flatten",
|
|
"nameLocation": "11618:7:10",
|
|
"parameters": {
|
|
"id": 9789,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9788,
|
|
"mutability": "mutable",
|
|
"name": "b",
|
|
"nameLocation": "11643:1:10",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9826,
|
|
"src": "11626:18:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
|
|
"typeString": "bytes32[]"
|
|
},
|
|
"typeName": {
|
|
"baseType": {
|
|
"id": 9786,
|
|
"name": "bytes32",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11626:7:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
},
|
|
"id": 9787,
|
|
"nodeType": "ArrayTypeName",
|
|
"src": "11626:9:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
|
|
"typeString": "bytes32[]"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11625:20:10"
|
|
},
|
|
"returnParameters": {
|
|
"id": 9792,
|
|
"nodeType": "ParameterList",
|
|
"parameters": [
|
|
{
|
|
"constant": false,
|
|
"id": 9791,
|
|
"mutability": "mutable",
|
|
"name": "",
|
|
"nameLocation": "-1:-1:-1",
|
|
"nodeType": "VariableDeclaration",
|
|
"scope": 9826,
|
|
"src": "11668:12:10",
|
|
"stateVariable": false,
|
|
"storageLocation": "memory",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_memory_ptr",
|
|
"typeString": "bytes"
|
|
},
|
|
"typeName": {
|
|
"id": 9790,
|
|
"name": "bytes",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "11668:5:10",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes_storage_ptr",
|
|
"typeString": "bytes"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"src": "11667:14:10"
|
|
},
|
|
"scope": 9827,
|
|
"stateMutability": "pure",
|
|
"virtual": false,
|
|
"visibility": "private"
|
|
}
|
|
],
|
|
"abstract": false,
|
|
"baseContracts": [],
|
|
"canonicalName": "stdStorage",
|
|
"contractDependencies": [],
|
|
"contractKind": "library",
|
|
"fullyImplemented": true,
|
|
"linearizedBaseContracts": [
|
|
9827
|
|
],
|
|
"name": "stdStorage",
|
|
"nameLocation": "7347:10:10",
|
|
"scope": 9828,
|
|
"usedErrors": [],
|
|
"usedEvents": []
|
|
}
|
|
],
|
|
"license": "MIT"
|
|
},
|
|
"id": 10
|
|
} |