1216 lines
43 KiB
JSON
1216 lines
43 KiB
JSON
{
|
|
"abi": [],
|
|
"bytecode": {
|
|
"object": "0x",
|
|
"sourceMap": "",
|
|
"linkReferences": {}
|
|
},
|
|
"deployedBytecode": {
|
|
"object": "0x",
|
|
"sourceMap": "",
|
|
"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/Base.sol\":\"CommonBase\"},\"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/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"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/Base.sol": "CommonBase"
|
|
},
|
|
"libraries": {}
|
|
},
|
|
"sources": {
|
|
"lib/forge-std/src/Base.sol": {
|
|
"keccak256": "0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c",
|
|
"urls": [
|
|
"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224",
|
|
"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"
|
|
],
|
|
"license": "MIT"
|
|
},
|
|
"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/Base.sol",
|
|
"id": 2367,
|
|
"exportedSymbols": {
|
|
"CommonBase": [
|
|
2354
|
|
],
|
|
"ScriptBase": [
|
|
2366
|
|
],
|
|
"StdStorage": [
|
|
8374
|
|
],
|
|
"TestBase": [
|
|
2357
|
|
],
|
|
"Vm": [
|
|
13464
|
|
],
|
|
"VmSafe": [
|
|
12992
|
|
]
|
|
},
|
|
"nodeType": "SourceUnit",
|
|
"src": "32:1761:1",
|
|
"nodes": [
|
|
{
|
|
"id": 2293,
|
|
"nodeType": "PragmaDirective",
|
|
"src": "32:31:1",
|
|
"nodes": [],
|
|
"literals": [
|
|
"solidity",
|
|
">=",
|
|
"0.6",
|
|
".2",
|
|
"<",
|
|
"0.9",
|
|
".0"
|
|
]
|
|
},
|
|
{
|
|
"id": 2295,
|
|
"nodeType": "ImportDirective",
|
|
"src": "65:44:1",
|
|
"nodes": [],
|
|
"absolutePath": "lib/forge-std/src/StdStorage.sol",
|
|
"file": "./StdStorage.sol",
|
|
"nameLocation": "-1:-1:-1",
|
|
"scope": 2367,
|
|
"sourceUnit": 9828,
|
|
"symbolAliases": [
|
|
{
|
|
"foreign": {
|
|
"id": 2294,
|
|
"name": "StdStorage",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 8374,
|
|
"src": "73:10:1",
|
|
"typeDescriptions": {}
|
|
},
|
|
"nameLocation": "-1:-1:-1"
|
|
}
|
|
],
|
|
"unitAlias": ""
|
|
},
|
|
{
|
|
"id": 2298,
|
|
"nodeType": "ImportDirective",
|
|
"src": "110:36:1",
|
|
"nodes": [],
|
|
"absolutePath": "lib/forge-std/src/Vm.sol",
|
|
"file": "./Vm.sol",
|
|
"nameLocation": "-1:-1:-1",
|
|
"scope": 2367,
|
|
"sourceUnit": 13465,
|
|
"symbolAliases": [
|
|
{
|
|
"foreign": {
|
|
"id": 2296,
|
|
"name": "Vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 13464,
|
|
"src": "118:2:1",
|
|
"typeDescriptions": {}
|
|
},
|
|
"nameLocation": "-1:-1:-1"
|
|
},
|
|
{
|
|
"foreign": {
|
|
"id": 2297,
|
|
"name": "VmSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 12992,
|
|
"src": "122:6:1",
|
|
"typeDescriptions": {}
|
|
},
|
|
"nameLocation": "-1:-1:-1"
|
|
}
|
|
],
|
|
"unitAlias": ""
|
|
},
|
|
{
|
|
"id": 2354,
|
|
"nodeType": "ContractDefinition",
|
|
"src": "148:1493:1",
|
|
"nodes": [
|
|
{
|
|
"id": 2312,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "254:94:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "VM_ADDRESS",
|
|
"nameLocation": "280:10:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2299,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "254:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"hexValue": "6865766d20636865617420636f6465",
|
|
"id": 2307,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "327:17:1",
|
|
"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": 2306,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "317:9:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 2308,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "317:28:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 2305,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "309:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 2304,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "309:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2309,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "309:37:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 2303,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "301:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 2302,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "301:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2310,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "301:46:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 2301,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "293:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 2300,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "293:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2311,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "293:55:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2315,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "438:78:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "CONSOLE",
|
|
"nameLocation": "464:7:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2313,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "438:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "307830303030303030303030303030303030303036333646366537333646366336353265366336663637",
|
|
"id": 2314,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "474:42:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"value": "0x000000000000000000636F6e736F6c652e6c6f67"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2318,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "623:86:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "CREATE2_FACTORY",
|
|
"nameLocation": "649:15:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2316,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "623:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "307834653539623434383437623337393537383538383932306341373846624632366330423439353643",
|
|
"id": 2317,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "667:42:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"value": "0x4e59b44847b379578588920cA78FbF26c0B4956C"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2332,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "812:105:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "DEFAULT_SENDER",
|
|
"nameLocation": "838:14:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2319,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "812:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"arguments": [
|
|
{
|
|
"hexValue": "666f756e6472792064656661756c742063616c6c6572",
|
|
"id": 2327,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "string",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "889:24:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_stringliteral_ee6e12ba256a78bc5d3ab9651804c8ab1f12e6bbf3894d4083f33e07309d1f38",
|
|
"typeString": "literal_string \"foundry default caller\""
|
|
},
|
|
"value": "foundry default caller"
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_stringliteral_ee6e12ba256a78bc5d3ab9651804c8ab1f12e6bbf3894d4083f33e07309d1f38",
|
|
"typeString": "literal_string \"foundry default caller\""
|
|
}
|
|
],
|
|
"id": 2326,
|
|
"name": "keccak256",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": -8,
|
|
"src": "879:9:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
|
"typeString": "function (bytes memory) pure returns (bytes32)"
|
|
}
|
|
},
|
|
"id": 2328,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "functionCall",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "879:35:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_bytes32",
|
|
"typeString": "bytes32"
|
|
}
|
|
],
|
|
"id": 2325,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "871:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint256_$",
|
|
"typeString": "type(uint256)"
|
|
},
|
|
"typeName": {
|
|
"id": 2324,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "871:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2329,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "871:44:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
],
|
|
"id": 2323,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "863:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_uint160_$",
|
|
"typeString": "type(uint160)"
|
|
},
|
|
"typeName": {
|
|
"id": 2322,
|
|
"name": "uint160",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "863:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2330,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "863:53:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_uint160",
|
|
"typeString": "uint160"
|
|
}
|
|
],
|
|
"id": 2321,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"lValueRequested": false,
|
|
"nodeType": "ElementaryTypeNameExpression",
|
|
"src": "855:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_address_$",
|
|
"typeString": "type(address)"
|
|
},
|
|
"typeName": {
|
|
"id": 2320,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "855:7:1",
|
|
"typeDescriptions": {}
|
|
}
|
|
},
|
|
"id": 2331,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "855:62:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2335,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "992:92:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "DEFAULT_TEST_CONTRACT",
|
|
"nameLocation": "1018:21:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2333,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "992:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "307835363135644542373938424233453464466130313339644661316233443433334363323362373266",
|
|
"id": 2334,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1042:42:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"value": "0x5615dEB798BB3E4dFa0139dFa1b3D433Cc23b72f"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2338,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1158:89:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "MULTICALL3_ADDRESS",
|
|
"nameLocation": "1184:18:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"typeName": {
|
|
"id": 2336,
|
|
"name": "address",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1158:7:1",
|
|
"stateMutability": "nonpayable",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "307863413131626465303539373762333633313136373032383836326245326131373339373643413131",
|
|
"id": 2337,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1205:42:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
},
|
|
"value": "0xcA11bde05977b3631167028862bE2a173976CA11"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2341,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1294:130:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "SECP256K1_ORDER",
|
|
"nameLocation": "1320:15:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2339,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1294:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383532383337353634323739303734393034333832363035313633313431353138313631343934333337",
|
|
"id": 2340,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1346:78:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_115792089237316195423570985008687907852837564279074904382605163141518161494337_by_1",
|
|
"typeString": "int_const 1157...(70 digits omitted)...4337"
|
|
},
|
|
"value": "115792089237316195423570985008687907852837564279074904382605163141518161494337"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2344,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1431:126:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "UINT256_MAX",
|
|
"nameLocation": "1457:11:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
},
|
|
"typeName": {
|
|
"id": 2342,
|
|
"name": "uint256",
|
|
"nodeType": "ElementaryTypeName",
|
|
"src": "1431:7:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_uint256",
|
|
"typeString": "uint256"
|
|
}
|
|
},
|
|
"value": {
|
|
"hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335",
|
|
"id": 2343,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "number",
|
|
"lValueRequested": false,
|
|
"nodeType": "Literal",
|
|
"src": "1479:78:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1",
|
|
"typeString": "int_const 1157...(70 digits omitted)...9935"
|
|
},
|
|
"value": "115792089237316195423570985008687907853269984665640564039457584007913129639935"
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2350,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1564:40:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "vm",
|
|
"nameLocation": "1585:2:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
},
|
|
"typeName": {
|
|
"id": 2346,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 2345,
|
|
"name": "Vm",
|
|
"nameLocations": [
|
|
"1564:2:1"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 13464,
|
|
"src": "1564:2:1"
|
|
},
|
|
"referencedDeclaration": 13464,
|
|
"src": "1564:2:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"id": 2348,
|
|
"name": "VM_ADDRESS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 2312,
|
|
"src": "1593:10:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 2347,
|
|
"name": "Vm",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 13464,
|
|
"src": "1590:2:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_Vm_$13464_$",
|
|
"typeString": "type(contract Vm)"
|
|
}
|
|
},
|
|
"id": 2349,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1590:14:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_Vm_$13464",
|
|
"typeString": "contract Vm"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
},
|
|
{
|
|
"id": 2353,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1610:28:1",
|
|
"nodes": [],
|
|
"constant": false,
|
|
"mutability": "mutable",
|
|
"name": "stdstore",
|
|
"nameLocation": "1630:8:1",
|
|
"scope": 2354,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage",
|
|
"typeString": "struct StdStorage"
|
|
},
|
|
"typeName": {
|
|
"id": 2352,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 2351,
|
|
"name": "StdStorage",
|
|
"nameLocations": [
|
|
"1610:10:1"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 8374,
|
|
"src": "1610:10:1"
|
|
},
|
|
"referencedDeclaration": 8374,
|
|
"src": "1610:10:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_struct$_StdStorage_$8374_storage_ptr",
|
|
"typeString": "struct StdStorage"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"abstract": true,
|
|
"baseContracts": [],
|
|
"canonicalName": "CommonBase",
|
|
"contractDependencies": [],
|
|
"contractKind": "contract",
|
|
"fullyImplemented": true,
|
|
"linearizedBaseContracts": [
|
|
2354
|
|
],
|
|
"name": "CommonBase",
|
|
"nameLocation": "166:10:1",
|
|
"scope": 2367,
|
|
"usedErrors": [],
|
|
"usedEvents": []
|
|
},
|
|
{
|
|
"id": 2357,
|
|
"nodeType": "ContractDefinition",
|
|
"src": "1643:43:1",
|
|
"nodes": [],
|
|
"abstract": true,
|
|
"baseContracts": [
|
|
{
|
|
"baseName": {
|
|
"id": 2355,
|
|
"name": "CommonBase",
|
|
"nameLocations": [
|
|
"1673:10:1"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 2354,
|
|
"src": "1673:10:1"
|
|
},
|
|
"id": 2356,
|
|
"nodeType": "InheritanceSpecifier",
|
|
"src": "1673:10:1"
|
|
}
|
|
],
|
|
"canonicalName": "TestBase",
|
|
"contractDependencies": [],
|
|
"contractKind": "contract",
|
|
"fullyImplemented": true,
|
|
"linearizedBaseContracts": [
|
|
2357,
|
|
2354
|
|
],
|
|
"name": "TestBase",
|
|
"nameLocation": "1661:8:1",
|
|
"scope": 2367,
|
|
"usedErrors": [],
|
|
"usedEvents": []
|
|
},
|
|
{
|
|
"id": 2366,
|
|
"nodeType": "ContractDefinition",
|
|
"src": "1688:104:1",
|
|
"nodes": [
|
|
{
|
|
"id": 2365,
|
|
"nodeType": "VariableDeclaration",
|
|
"src": "1737:52:1",
|
|
"nodes": [],
|
|
"constant": true,
|
|
"mutability": "constant",
|
|
"name": "vmSafe",
|
|
"nameLocation": "1762:6:1",
|
|
"scope": 2366,
|
|
"stateVariable": true,
|
|
"storageLocation": "default",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_VmSafe_$12992",
|
|
"typeString": "contract VmSafe"
|
|
},
|
|
"typeName": {
|
|
"id": 2361,
|
|
"nodeType": "UserDefinedTypeName",
|
|
"pathNode": {
|
|
"id": 2360,
|
|
"name": "VmSafe",
|
|
"nameLocations": [
|
|
"1737:6:1"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 12992,
|
|
"src": "1737:6:1"
|
|
},
|
|
"referencedDeclaration": 12992,
|
|
"src": "1737:6:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_VmSafe_$12992",
|
|
"typeString": "contract VmSafe"
|
|
}
|
|
},
|
|
"value": {
|
|
"arguments": [
|
|
{
|
|
"id": 2363,
|
|
"name": "VM_ADDRESS",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 2312,
|
|
"src": "1778:10:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
}
|
|
],
|
|
"expression": {
|
|
"argumentTypes": [
|
|
{
|
|
"typeIdentifier": "t_address",
|
|
"typeString": "address"
|
|
}
|
|
],
|
|
"id": 2362,
|
|
"name": "VmSafe",
|
|
"nodeType": "Identifier",
|
|
"overloadedDeclarations": [],
|
|
"referencedDeclaration": 12992,
|
|
"src": "1771:6:1",
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_type$_t_contract$_VmSafe_$12992_$",
|
|
"typeString": "type(contract VmSafe)"
|
|
}
|
|
},
|
|
"id": 2364,
|
|
"isConstant": false,
|
|
"isLValue": false,
|
|
"isPure": true,
|
|
"kind": "typeConversion",
|
|
"lValueRequested": false,
|
|
"nameLocations": [],
|
|
"names": [],
|
|
"nodeType": "FunctionCall",
|
|
"src": "1771:18:1",
|
|
"tryCall": false,
|
|
"typeDescriptions": {
|
|
"typeIdentifier": "t_contract$_VmSafe_$12992",
|
|
"typeString": "contract VmSafe"
|
|
}
|
|
},
|
|
"visibility": "internal"
|
|
}
|
|
],
|
|
"abstract": true,
|
|
"baseContracts": [
|
|
{
|
|
"baseName": {
|
|
"id": 2358,
|
|
"name": "CommonBase",
|
|
"nameLocations": [
|
|
"1720:10:1"
|
|
],
|
|
"nodeType": "IdentifierPath",
|
|
"referencedDeclaration": 2354,
|
|
"src": "1720:10:1"
|
|
},
|
|
"id": 2359,
|
|
"nodeType": "InheritanceSpecifier",
|
|
"src": "1720:10:1"
|
|
}
|
|
],
|
|
"canonicalName": "ScriptBase",
|
|
"contractDependencies": [],
|
|
"contractKind": "contract",
|
|
"fullyImplemented": true,
|
|
"linearizedBaseContracts": [
|
|
2366,
|
|
2354
|
|
],
|
|
"name": "ScriptBase",
|
|
"nameLocation": "1706:10:1",
|
|
"scope": 2367,
|
|
"usedErrors": [],
|
|
"usedEvents": []
|
|
}
|
|
],
|
|
"license": "MIT"
|
|
},
|
|
"id": 1
|
|
} |